Shader "Hidden/Image Effects/Cinematic/AmbientOcclusion" {
	Properties {
		_MainTex ("", 2D) = "" {}
		_OcclusionTexture ("", 2D) = "" {}
	}
	SubShader {
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 62068
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ScreenParams;
						vec4 _ZBufferParams;
						vec4 unused_1_3;
					};
					layout(std140) uniform UnityPerCameraRare {
						vec4 unused_2_0[6];
						mat4x4 unity_CameraProjection;
						vec4 unused_2_2[12];
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _CameraDepthTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec2 u_xlat2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec3 u_xlat5;
					vec4 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					float u_xlat10;
					ivec2 u_xlati10;
					bvec2 u_xlatb10;
					vec3 u_xlat13;
					int u_xlati15;
					bvec2 u_xlatb15;
					float u_xlat18;
					bvec2 u_xlatb19;
					vec2 u_xlat20;
					float u_xlat22;
					bool u_xlatb22;
					float u_xlat27;
					float u_xlat28;
					float u_xlat29;
					int u_xlati30;
					float u_xlat31;
					float u_xlat32;
					int u_xlati32;
					bool u_xlatb32;
					void main()
					{
					    u_xlat0 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat0.xyz = u_xlat0.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat18 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat18 = 2.0 / u_xlat18;
					    u_xlat1.xy = u_xlat0.xy * vec2(u_xlat18);
					    u_xlat1.z = u_xlat18 + -1.0;
					    u_xlat0.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthTexture, vs_TEXCOORD0.xy);
					    u_xlat27 = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat27 = float(1.0) / u_xlat27;
					    u_xlatb10.xy = lessThan(vs_TEXCOORD0.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati10.x = int((uint(u_xlatb10.y) * 0xffffffffu) | (uint(u_xlatb10.x) * 0xffffffffu));
					    u_xlatb19.xy = lessThan(vec4(1.0, 1.0, 1.0, 1.0), vs_TEXCOORD0.xyxy).xy;
					    u_xlati10.y = int((uint(u_xlatb19.y) * 0xffffffffu) | (uint(u_xlatb19.x) * 0xffffffffu));
					    u_xlati10.xy = ivec2(uvec2(u_xlati10.xy) & uvec2(1u, 1u));
					    u_xlati10.x = u_xlati10.y + u_xlati10.x;
					    u_xlat10 = float(u_xlati10.x);
					    u_xlatb1 = 9.99999975e-06>=u_xlat1.x;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat1.x = u_xlat1.x + u_xlat10;
					    u_xlat27 = u_xlat1.x * 100000000.0 + u_xlat27;
					    u_xlat1.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xy = u_xlat1.xy + (-unity_CameraProjection[2].xy);
					    u_xlat2.x = unity_CameraProjection[0].x;
					    u_xlat2.y = unity_CameraProjection[1].y;
					    u_xlat1.xy = u_xlat1.xy / u_xlat2.xy;
					    u_xlat1.z = 1.0;
					    u_xlat3.xyz = vec3(u_xlat27) * u_xlat1.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat28 = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat28 = fract(u_xlat28);
					    u_xlat28 = u_xlat28 * 52.9829178;
					    u_xlat28 = fract(u_xlat28);
					    u_xlat20.x = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat29 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat22 = float(u_xlati_loop_1);
					        u_xlat22 = u_xlat22 * 1.00010002;
					        u_xlat4.y = floor(u_xlat22);
					        u_xlat22 = u_xlat4.y * 78.2330017;
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat6.z = u_xlat22 * 2.0 + -1.0;
					        u_xlat22 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = u_xlat22 * 6.28318548;
					        u_xlat7 = sin(u_xlat22);
					        u_xlat8.x = cos(u_xlat22);
					        u_xlat22 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat22 = sqrt(u_xlat22);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat22) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat20.x;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat13.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat32 = dot((-u_xlat0.xyz), u_xlat13.xyz);
					        u_xlatb32 = u_xlat32>=0.0;
					        u_xlat13.xyz = (bool(u_xlatb32)) ? (-u_xlat13.xyz) : u_xlat13.xyz;
					        u_xlat13.xyz = u_xlat1.xyz * vec3(u_xlat27) + u_xlat13.xyz;
					        u_xlat6.xy = u_xlat13.yy * unity_CameraProjection[1].xy;
					        u_xlat13.xy = unity_CameraProjection[0].xy * u_xlat13.xx + u_xlat6.xy;
					        u_xlat13.xy = unity_CameraProjection[2].xy * u_xlat13.zz + u_xlat13.xy;
					        u_xlat13.xy = u_xlat13.xy / u_xlat13.zz;
					        u_xlat13.xy = u_xlat13.xy + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xy * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthTexture, u_xlat6.xy);
					        u_xlat31 = _ZBufferParams.z * u_xlat6.x + _ZBufferParams.w;
					        u_xlat31 = float(1.0) / u_xlat31;
					        u_xlatb15.xy = lessThan(u_xlat13.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlatb32 = u_xlatb15.y || u_xlatb15.x;
					        u_xlati32 = u_xlatb32 ? 1 : int(0);
					        u_xlatb15.xy = lessThan(vec4(2.0, 2.0, 0.0, 0.0), u_xlat13.xyxx).xy;
					        u_xlatb15.x = u_xlatb15.y || u_xlatb15.x;
					        u_xlati15 = u_xlatb15.x ? 1 : int(0);
					        u_xlati32 = u_xlati32 + u_xlati15;
					        u_xlat32 = float(u_xlati32);
					        u_xlatb6 = 9.99999975e-06>=u_xlat6.x;
					        u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					        u_xlat32 = u_xlat32 + u_xlat6.x;
					        u_xlat31 = u_xlat32 * 100000000.0 + u_xlat31;
					        u_xlat13.xy = u_xlat13.xy + (-unity_CameraProjection[2].xy);
					        u_xlat13.xy = u_xlat13.xy + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xy / u_xlat2.xy;
					        u_xlat13.xyz = u_xlat5.xyz * vec3(u_xlat31) + (-u_xlat3.xyz);
					        u_xlat5.x = dot(u_xlat13.xyz, u_xlat0.xyz);
					        u_xlat5.x = (-u_xlat27) * 0.00200000009 + u_xlat5.x;
					        u_xlat5.x = max(u_xlat5.x, 0.0);
					        u_xlat13.x = dot(u_xlat13.xyz, u_xlat13.xyz);
					        u_xlat13.x = u_xlat13.x + 9.99999975e-05;
					        u_xlat13.x = u_xlat5.x / u_xlat13.x;
					        u_xlat29 = u_xlat29 + u_xlat13.x;
					    }
					    u_xlat0.x = u_xlat29 * _Radius;
					    u_xlat0.x = u_xlat0.x * _Intensity;
					    u_xlat0.x = u_xlat0.x / u_xlat20.x;
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x * 0.600000024;
					    SV_Target0 = exp2(u_xlat0.xxxx);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ScreenParams;
						vec4 _ZBufferParams;
						vec4 unused_1_3;
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_2_0[32];
						mat4x4 unity_StereoCameraProjection[2];
						vec4 unused_2_2[32];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _CameraDepthTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec2 u_xlat2;
					bvec2 u_xlatb2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec4 u_xlat5;
					vec4 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					vec3 u_xlat9;
					vec3 u_xlat10;
					vec3 u_xlat13;
					bool u_xlatb13;
					float u_xlat15;
					ivec2 u_xlati15;
					bvec2 u_xlatb15;
					float u_xlat19;
					ivec2 u_xlati19;
					bvec2 u_xlatb19;
					vec2 u_xlat20;
					int u_xlati22;
					bvec2 u_xlatb24;
					float u_xlat27;
					float u_xlat29;
					float u_xlat30;
					float u_xlat31;
					bool u_xlatb31;
					float u_xlat32;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat9.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat27 = dot(u_xlat9.xyz, u_xlat9.xyz);
					    u_xlat27 = 2.0 / u_xlat27;
					    u_xlat1.xy = u_xlat9.xy * vec2(u_xlat27);
					    u_xlat1.z = u_xlat27 + -1.0;
					    u_xlat9.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthTexture, vs_TEXCOORD0.xy);
					    u_xlat10.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat10.x = float(1.0) / u_xlat10.x;
					    u_xlatb19.xy = lessThan(vs_TEXCOORD0.xyxy, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati19.x = int((uint(u_xlatb19.y) * 0xffffffffu) | (uint(u_xlatb19.x) * 0xffffffffu));
					    u_xlatb2.xy = lessThan(vec4(1.0, 1.0, 0.0, 0.0), vs_TEXCOORD0.xyxx).xy;
					    u_xlati19.y = int((uint(u_xlatb2.y) * 0xffffffffu) | (uint(u_xlatb2.x) * 0xffffffffu));
					    u_xlati19.xy = ivec2(uvec2(u_xlati19.xy) & uvec2(1u, 1u));
					    u_xlati19.x = u_xlati19.y + u_xlati19.x;
					    u_xlat19 = float(u_xlati19.x);
					    u_xlatb1 = 9.99999975e-06>=u_xlat1.x;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat1.x = u_xlat1.x + u_xlat19;
					    u_xlat1.x = u_xlat1.x * 100000000.0 + u_xlat10.x;
					    u_xlat10.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat10.xy = u_xlat10.xy + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					    u_xlat2.x = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].x;
					    u_xlat2.y = unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].y;
					    u_xlat3.xy = u_xlat10.xy / u_xlat2.xy;
					    u_xlat3.z = 1.0;
					    u_xlat10.xyz = u_xlat1.xxx * u_xlat3.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat20.x = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat20.x = u_xlat20.x * 52.9829178;
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat29 = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat30 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat31 = float(u_xlati_loop_1);
					        u_xlat31 = u_xlat31 * 1.00010002;
					        u_xlat4.y = floor(u_xlat31);
					        u_xlat31 = u_xlat4.y * 78.2330017;
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat6.z = u_xlat31 * 2.0 + -1.0;
					        u_xlat31 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = u_xlat31 * 6.28318548;
					        u_xlat7 = sin(u_xlat31);
					        u_xlat8.x = cos(u_xlat31);
					        u_xlat31 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat31 = sqrt(u_xlat31);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat31) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat29;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat6.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat13.x = dot((-u_xlat9.xyz), u_xlat6.xyz);
					        u_xlatb13 = u_xlat13.x>=0.0;
					        u_xlat6.xyz = (bool(u_xlatb13)) ? (-u_xlat6.xyz) : u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat3.xyz * u_xlat1.xxx + u_xlat6.xyz;
					        u_xlat13.xz = u_xlat6.yy * unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xy;
					        u_xlat13.xz = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].xy * u_xlat6.xx + u_xlat13.xz;
					        u_xlat13.xz = unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy * u_xlat6.zz + u_xlat13.xz;
					        u_xlat13.xz = u_xlat13.xz / u_xlat6.zz;
					        u_xlat13.xz = u_xlat13.xz + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xz * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthTexture, u_xlat6.xy);
					        u_xlat32 = _ZBufferParams.z * u_xlat6.x + _ZBufferParams.w;
					        u_xlat32 = float(1.0) / u_xlat32;
					        u_xlatb15.xy = lessThan(u_xlat13.xzxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlati15.x = int((uint(u_xlatb15.y) * 0xffffffffu) | (uint(u_xlatb15.x) * 0xffffffffu));
					        u_xlatb24.xy = lessThan(vec4(2.0, 2.0, 2.0, 2.0), u_xlat13.xzxz).xy;
					        u_xlati15.y = int((uint(u_xlatb24.y) * 0xffffffffu) | (uint(u_xlatb24.x) * 0xffffffffu));
					        u_xlati15.xy = ivec2(uvec2(u_xlati15.xy) & uvec2(1u, 1u));
					        u_xlati15.x = u_xlati15.y + u_xlati15.x;
					        u_xlat15 = float(u_xlati15.x);
					        u_xlatb6 = 9.99999975e-06>=u_xlat6.x;
					        u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					        u_xlat6.x = u_xlat6.x + u_xlat15;
					        u_xlat32 = u_xlat6.x * 100000000.0 + u_xlat32;
					        u_xlat13.xz = u_xlat13.xz + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					        u_xlat13.xz = u_xlat13.xz + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xz / u_xlat2.xy;
					        u_xlat5.xyw = u_xlat5.xyz * vec3(u_xlat32) + (-u_xlat10.xyz);
					        u_xlat13.x = dot(u_xlat5.xyw, u_xlat9.xyz);
					        u_xlat13.x = (-u_xlat1.x) * 0.00200000009 + u_xlat13.x;
					        u_xlat13.x = max(u_xlat13.x, 0.0);
					        u_xlat31 = dot(u_xlat5.xyw, u_xlat5.xyw);
					        u_xlat31 = u_xlat31 + 9.99999975e-05;
					        u_xlat13.x = u_xlat13.x / u_xlat31;
					        u_xlat30 = u_xlat30 + u_xlat13.x;
					    }
					    u_xlat0 = u_xlat30 * _Radius;
					    u_xlat0 = u_xlat0 * _Intensity;
					    u_xlat0 = u_xlat0 / u_xlat29;
					    u_xlat0 = log2(u_xlat0);
					    u_xlat0 = u_xlat0 * 0.600000024;
					    SV_Target0 = exp2(vec4(u_xlat0));
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 71241
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 _ScreenParams;
						vec4 unused_1_3[2];
					};
					layout(std140) uniform UnityPerCameraRare {
						vec4 unused_2_0[6];
						mat4x4 unity_CameraProjection;
						vec4 unused_2_2[12];
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec2 u_xlat2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec3 u_xlat5;
					vec4 u_xlat6;
					int u_xlati6;
					bvec2 u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					vec3 u_xlat9;
					ivec2 u_xlati9;
					bvec2 u_xlatb9;
					vec3 u_xlat13;
					float u_xlat18;
					bvec2 u_xlatb18;
					vec2 u_xlat20;
					float u_xlat22;
					bool u_xlatb22;
					float u_xlat28;
					float u_xlat29;
					int u_xlati30;
					float u_xlat31;
					float u_xlat32;
					int u_xlati32;
					bool u_xlatb32;
					void main()
					{
					    u_xlat0 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat1.xyz = u_xlat0.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat0.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat0.x = 2.0 / u_xlat0.x;
					    u_xlat1.xy = u_xlat1.xy * u_xlat0.xx;
					    u_xlat1.z = u_xlat0.x + -1.0;
					    u_xlat0.x = dot(u_xlat0.zw, vec2(1.0, 0.00392156886));
					    u_xlatb9.xy = lessThan(vs_TEXCOORD0.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati9.x = int((uint(u_xlatb9.y) * 0xffffffffu) | (uint(u_xlatb9.x) * 0xffffffffu));
					    u_xlatb18.xy = lessThan(vec4(1.0, 1.0, 1.0, 1.0), vs_TEXCOORD0.xyxy).xy;
					    u_xlati9.y = int((uint(u_xlatb18.y) * 0xffffffffu) | (uint(u_xlatb18.x) * 0xffffffffu));
					    u_xlati9.xy = ivec2(uvec2(u_xlati9.xy) & uvec2(1u, 1u));
					    u_xlati9.x = u_xlati9.y + u_xlati9.x;
					    u_xlat9.x = float(u_xlati9.x);
					    u_xlatb18.x = 9.99999975e-06>=u_xlat0.x;
					    u_xlat18 = u_xlatb18.x ? 1.0 : float(0.0);
					    u_xlat9.x = u_xlat18 + u_xlat9.x;
					    u_xlat9.x = u_xlat9.x * 100000000.0;
					    u_xlat0.x = u_xlat0.x * _ProjectionParams.z + u_xlat9.x;
					    u_xlat0.x = (-_ProjectionParams.z) * 1.52587891e-05 + u_xlat0.x;
					    u_xlat9.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat9.xy = u_xlat9.xy + (-unity_CameraProjection[2].xy);
					    u_xlat2.x = unity_CameraProjection[0].x;
					    u_xlat2.y = unity_CameraProjection[1].y;
					    u_xlat3.xy = u_xlat9.xy / u_xlat2.xy;
					    u_xlat3.z = 1.0;
					    u_xlat9.xyz = u_xlat0.xxx * u_xlat3.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat28 = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat1.w = fract(u_xlat28);
					    u_xlat1 = u_xlat1 * vec4(1.0, 1.0, -1.0, 52.9829178);
					    u_xlat28 = fract(u_xlat1.w);
					    u_xlat20.x = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat29 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat22 = float(u_xlati_loop_1);
					        u_xlat22 = u_xlat22 * 1.00010002;
					        u_xlat4.y = floor(u_xlat22);
					        u_xlat22 = u_xlat4.y * 78.2330017;
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat6.z = u_xlat22 * 2.0 + -1.0;
					        u_xlat22 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = u_xlat22 * 6.28318548;
					        u_xlat7 = sin(u_xlat22);
					        u_xlat8.x = cos(u_xlat22);
					        u_xlat22 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat22 = sqrt(u_xlat22);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat22) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat20.x;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat13.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat32 = dot((-u_xlat1.xyz), u_xlat13.xyz);
					        u_xlatb32 = u_xlat32>=0.0;
					        u_xlat13.xyz = (bool(u_xlatb32)) ? (-u_xlat13.xyz) : u_xlat13.xyz;
					        u_xlat13.xyz = u_xlat3.xyz * u_xlat0.xxx + u_xlat13.xyz;
					        u_xlat6.xy = u_xlat13.yy * unity_CameraProjection[1].xy;
					        u_xlat13.xy = unity_CameraProjection[0].xy * u_xlat13.xx + u_xlat6.xy;
					        u_xlat13.xy = unity_CameraProjection[2].xy * u_xlat13.zz + u_xlat13.xy;
					        u_xlat13.xy = u_xlat13.xy / u_xlat13.zz;
					        u_xlat13.xy = u_xlat13.xy + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xy * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthNormalsTexture, u_xlat6.xy);
					        u_xlat31 = dot(u_xlat6.zw, vec2(1.0, 0.00392156886));
					        u_xlatb6.xy = lessThan(u_xlat13.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlatb32 = u_xlatb6.y || u_xlatb6.x;
					        u_xlati32 = u_xlatb32 ? 1 : int(0);
					        u_xlatb6.xy = lessThan(vec4(2.0, 2.0, 0.0, 0.0), u_xlat13.xyxx).xy;
					        u_xlatb6.x = u_xlatb6.y || u_xlatb6.x;
					        u_xlati6 = u_xlatb6.x ? 1 : int(0);
					        u_xlati32 = u_xlati32 + u_xlati6;
					        u_xlat32 = float(u_xlati32);
					        u_xlatb6.x = 9.99999975e-06>=u_xlat31;
					        u_xlat6.x = u_xlatb6.x ? 1.0 : float(0.0);
					        u_xlat32 = u_xlat32 + u_xlat6.x;
					        u_xlat32 = u_xlat32 * 100000000.0;
					        u_xlat31 = u_xlat31 * _ProjectionParams.z + u_xlat32;
					        u_xlat13.xy = u_xlat13.xy + (-unity_CameraProjection[2].xy);
					        u_xlat13.xy = u_xlat13.xy + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xy / u_xlat2.xy;
					        u_xlat13.xyz = u_xlat5.xyz * vec3(u_xlat31) + (-u_xlat9.xyz);
					        u_xlat5.x = dot(u_xlat13.xyz, u_xlat1.xyz);
					        u_xlat5.x = (-u_xlat0.x) * 0.00200000009 + u_xlat5.x;
					        u_xlat5.x = max(u_xlat5.x, 0.0);
					        u_xlat13.x = dot(u_xlat13.xyz, u_xlat13.xyz);
					        u_xlat13.x = u_xlat13.x + 9.99999975e-05;
					        u_xlat13.x = u_xlat5.x / u_xlat13.x;
					        u_xlat29 = u_xlat29 + u_xlat13.x;
					    }
					    u_xlat0.x = u_xlat29 * _Radius;
					    u_xlat0.x = u_xlat0.x * _Intensity;
					    u_xlat0.x = u_xlat0.x / u_xlat20.x;
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x * 0.600000024;
					    SV_Target0 = exp2(u_xlat0.xxxx);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 _ScreenParams;
						vec4 unused_1_3[2];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_2_0[32];
						mat4x4 unity_StereoCameraProjection[2];
						vec4 unused_2_2[32];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec4 u_xlat5;
					vec4 u_xlat6;
					ivec2 u_xlati6;
					bvec2 u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					vec3 u_xlat9;
					vec3 u_xlat10;
					ivec2 u_xlati10;
					bvec2 u_xlatb10;
					vec3 u_xlat13;
					bool u_xlatb13;
					float u_xlat15;
					bvec2 u_xlatb15;
					float u_xlat19;
					bvec2 u_xlatb19;
					vec2 u_xlat20;
					int u_xlati22;
					float u_xlat27;
					float u_xlat29;
					float u_xlat30;
					float u_xlat31;
					bool u_xlatb31;
					float u_xlat32;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat9.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat27 = dot(u_xlat9.xyz, u_xlat9.xyz);
					    u_xlat27 = 2.0 / u_xlat27;
					    u_xlat2.xy = u_xlat9.xy * vec2(u_xlat27);
					    u_xlat2.z = u_xlat27 + -1.0;
					    u_xlat9.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1.x = dot(u_xlat1.zw, vec2(1.0, 0.00392156886));
					    u_xlatb10.xy = lessThan(vs_TEXCOORD0.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati10.x = int((uint(u_xlatb10.y) * 0xffffffffu) | (uint(u_xlatb10.x) * 0xffffffffu));
					    u_xlatb19.xy = lessThan(vec4(1.0, 1.0, 1.0, 1.0), vs_TEXCOORD0.xyxy).xy;
					    u_xlati10.y = int((uint(u_xlatb19.y) * 0xffffffffu) | (uint(u_xlatb19.x) * 0xffffffffu));
					    u_xlati10.xy = ivec2(uvec2(u_xlati10.xy) & uvec2(1u, 1u));
					    u_xlati10.x = u_xlati10.y + u_xlati10.x;
					    u_xlat10.x = float(u_xlati10.x);
					    u_xlatb19.x = 9.99999975e-06>=u_xlat1.x;
					    u_xlat19 = u_xlatb19.x ? 1.0 : float(0.0);
					    u_xlat10.x = u_xlat19 + u_xlat10.x;
					    u_xlat10.x = u_xlat10.x * 100000000.0;
					    u_xlat1.x = u_xlat1.x * _ProjectionParams.z + u_xlat10.x;
					    u_xlat1.x = (-_ProjectionParams.z) * 1.52587891e-05 + u_xlat1.x;
					    u_xlat10.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat10.xy = u_xlat10.xy + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					    u_xlat2.x = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].x;
					    u_xlat2.y = unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].y;
					    u_xlat3.xy = u_xlat10.xy / u_xlat2.xy;
					    u_xlat3.z = 1.0;
					    u_xlat10.xyz = u_xlat1.xxx * u_xlat3.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat20.x = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat20.x = u_xlat20.x * 52.9829178;
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat29 = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat30 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat31 = float(u_xlati_loop_1);
					        u_xlat31 = u_xlat31 * 1.00010002;
					        u_xlat4.y = floor(u_xlat31);
					        u_xlat31 = u_xlat4.y * 78.2330017;
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat6.z = u_xlat31 * 2.0 + -1.0;
					        u_xlat31 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = u_xlat31 * 6.28318548;
					        u_xlat7 = sin(u_xlat31);
					        u_xlat8.x = cos(u_xlat31);
					        u_xlat31 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat31 = sqrt(u_xlat31);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat31) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat29;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat6.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat13.x = dot((-u_xlat9.xyz), u_xlat6.xyz);
					        u_xlatb13 = u_xlat13.x>=0.0;
					        u_xlat6.xyz = (bool(u_xlatb13)) ? (-u_xlat6.xyz) : u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat3.xyz * u_xlat1.xxx + u_xlat6.xyz;
					        u_xlat13.xz = u_xlat6.yy * unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xy;
					        u_xlat13.xz = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].xy * u_xlat6.xx + u_xlat13.xz;
					        u_xlat13.xz = unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy * u_xlat6.zz + u_xlat13.xz;
					        u_xlat13.xz = u_xlat13.xz / u_xlat6.zz;
					        u_xlat13.xz = u_xlat13.xz + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xz * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthNormalsTexture, u_xlat6.xy);
					        u_xlat32 = dot(u_xlat6.zw, vec2(1.0, 0.00392156886));
					        u_xlatb6.xy = lessThan(u_xlat13.xzxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlati6.x = int((uint(u_xlatb6.y) * 0xffffffffu) | (uint(u_xlatb6.x) * 0xffffffffu));
					        u_xlatb15.xy = lessThan(vec4(2.0, 2.0, 0.0, 0.0), u_xlat13.xzxx).xy;
					        u_xlati6.y = int((uint(u_xlatb15.y) * 0xffffffffu) | (uint(u_xlatb15.x) * 0xffffffffu));
					        u_xlati6.xy = ivec2(uvec2(u_xlati6.xy) & uvec2(1u, 1u));
					        u_xlati6.x = u_xlati6.y + u_xlati6.x;
					        u_xlat6.x = float(u_xlati6.x);
					        u_xlatb15.x = 9.99999975e-06>=u_xlat32;
					        u_xlat15 = u_xlatb15.x ? 1.0 : float(0.0);
					        u_xlat6.x = u_xlat15 + u_xlat6.x;
					        u_xlat6.x = u_xlat6.x * 100000000.0;
					        u_xlat32 = u_xlat32 * _ProjectionParams.z + u_xlat6.x;
					        u_xlat13.xz = u_xlat13.xz + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					        u_xlat13.xz = u_xlat13.xz + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xz / u_xlat2.xy;
					        u_xlat5.xyw = u_xlat5.xyz * vec3(u_xlat32) + (-u_xlat10.xyz);
					        u_xlat13.x = dot(u_xlat5.xyw, u_xlat9.xyz);
					        u_xlat13.x = (-u_xlat1.x) * 0.00200000009 + u_xlat13.x;
					        u_xlat13.x = max(u_xlat13.x, 0.0);
					        u_xlat31 = dot(u_xlat5.xyw, u_xlat5.xyw);
					        u_xlat31 = u_xlat31 + 9.99999975e-05;
					        u_xlat13.x = u_xlat13.x / u_xlat31;
					        u_xlat30 = u_xlat30 + u_xlat13.x;
					    }
					    u_xlat0 = u_xlat30 * _Radius;
					    u_xlat0 = u_xlat0 * _Intensity;
					    u_xlat0 = u_xlat0 / u_xlat29;
					    u_xlat0 = log2(u_xlat0);
					    u_xlat0 = u_xlat0 * 0.600000024;
					    SV_Target0 = exp2(vec4(u_xlat0));
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 184628
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[6];
						vec4 _ScreenParams;
						vec4 _ZBufferParams;
						vec4 unused_1_3;
					};
					layout(std140) uniform UnityPerCameraRare {
						vec4 unused_2_0[6];
						mat4x4 unity_CameraProjection;
						vec4 unused_2_2[4];
						mat4x4 unity_WorldToCamera;
						vec4 unused_2_4[4];
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _CameraDepthTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec2 u_xlat2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec3 u_xlat5;
					vec4 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					float u_xlat10;
					ivec2 u_xlati10;
					bvec2 u_xlatb10;
					vec3 u_xlat13;
					int u_xlati15;
					bvec2 u_xlatb15;
					bvec2 u_xlatb19;
					vec2 u_xlat20;
					float u_xlat22;
					bool u_xlatb22;
					float u_xlat27;
					bool u_xlatb27;
					float u_xlat28;
					float u_xlat29;
					int u_xlati30;
					float u_xlat31;
					float u_xlat32;
					int u_xlati32;
					bool u_xlatb32;
					void main()
					{
					    u_xlat0 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat27 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlatb27 = u_xlat27!=0.0;
					    u_xlat27 = (u_xlatb27) ? -1.0 : -0.0;
					    u_xlat0.xyz = u_xlat0.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat27);
					    u_xlat1.xyz = u_xlat0.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat0.xyw = unity_WorldToCamera[0].xyz * u_xlat0.xxx + u_xlat1.xyz;
					    u_xlat0.xyz = unity_WorldToCamera[2].xyz * u_xlat0.zzz + u_xlat0.xyw;
					    u_xlat1 = texture(_CameraDepthTexture, vs_TEXCOORD0.xy);
					    u_xlat27 = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat27 = float(1.0) / u_xlat27;
					    u_xlatb10.xy = lessThan(vs_TEXCOORD0.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati10.x = int((uint(u_xlatb10.y) * 0xffffffffu) | (uint(u_xlatb10.x) * 0xffffffffu));
					    u_xlatb19.xy = lessThan(vec4(1.0, 1.0, 1.0, 1.0), vs_TEXCOORD0.xyxy).xy;
					    u_xlati10.y = int((uint(u_xlatb19.y) * 0xffffffffu) | (uint(u_xlatb19.x) * 0xffffffffu));
					    u_xlati10.xy = ivec2(uvec2(u_xlati10.xy) & uvec2(1u, 1u));
					    u_xlati10.x = u_xlati10.y + u_xlati10.x;
					    u_xlat10 = float(u_xlati10.x);
					    u_xlatb1 = 9.99999975e-06>=u_xlat1.x;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat1.x = u_xlat1.x + u_xlat10;
					    u_xlat27 = u_xlat1.x * 100000000.0 + u_xlat27;
					    u_xlat1.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xy = u_xlat1.xy + (-unity_CameraProjection[2].xy);
					    u_xlat2.x = unity_CameraProjection[0].x;
					    u_xlat2.y = unity_CameraProjection[1].y;
					    u_xlat1.xy = u_xlat1.xy / u_xlat2.xy;
					    u_xlat1.z = 1.0;
					    u_xlat3.xyz = vec3(u_xlat27) * u_xlat1.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat28 = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat28 = fract(u_xlat28);
					    u_xlat28 = u_xlat28 * 52.9829178;
					    u_xlat28 = fract(u_xlat28);
					    u_xlat20.x = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat29 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat22 = float(u_xlati_loop_1);
					        u_xlat22 = u_xlat22 * 1.00010002;
					        u_xlat4.y = floor(u_xlat22);
					        u_xlat22 = u_xlat4.y * 78.2330017;
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat6.z = u_xlat22 * 2.0 + -1.0;
					        u_xlat22 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat22 = sin(u_xlat22);
					        u_xlat22 = u_xlat22 * 43758.5469;
					        u_xlat22 = fract(u_xlat22);
					        u_xlat22 = u_xlat28 + u_xlat22;
					        u_xlat22 = u_xlat22 * 6.28318548;
					        u_xlat7 = sin(u_xlat22);
					        u_xlat8.x = cos(u_xlat22);
					        u_xlat22 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat22 = sqrt(u_xlat22);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat22) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat20.x;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat13.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat32 = dot((-u_xlat0.xyz), u_xlat13.xyz);
					        u_xlatb32 = u_xlat32>=0.0;
					        u_xlat13.xyz = (bool(u_xlatb32)) ? (-u_xlat13.xyz) : u_xlat13.xyz;
					        u_xlat13.xyz = u_xlat1.xyz * vec3(u_xlat27) + u_xlat13.xyz;
					        u_xlat6.xy = u_xlat13.yy * unity_CameraProjection[1].xy;
					        u_xlat13.xy = unity_CameraProjection[0].xy * u_xlat13.xx + u_xlat6.xy;
					        u_xlat13.xy = unity_CameraProjection[2].xy * u_xlat13.zz + u_xlat13.xy;
					        u_xlat13.xy = u_xlat13.xy / u_xlat13.zz;
					        u_xlat13.xy = u_xlat13.xy + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xy * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthTexture, u_xlat6.xy);
					        u_xlat31 = _ZBufferParams.z * u_xlat6.x + _ZBufferParams.w;
					        u_xlat31 = float(1.0) / u_xlat31;
					        u_xlatb15.xy = lessThan(u_xlat13.xyxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlatb32 = u_xlatb15.y || u_xlatb15.x;
					        u_xlati32 = u_xlatb32 ? 1 : int(0);
					        u_xlatb15.xy = lessThan(vec4(2.0, 2.0, 0.0, 0.0), u_xlat13.xyxx).xy;
					        u_xlatb15.x = u_xlatb15.y || u_xlatb15.x;
					        u_xlati15 = u_xlatb15.x ? 1 : int(0);
					        u_xlati32 = u_xlati32 + u_xlati15;
					        u_xlat32 = float(u_xlati32);
					        u_xlatb6 = 9.99999975e-06>=u_xlat6.x;
					        u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					        u_xlat32 = u_xlat32 + u_xlat6.x;
					        u_xlat31 = u_xlat32 * 100000000.0 + u_xlat31;
					        u_xlat13.xy = u_xlat13.xy + (-unity_CameraProjection[2].xy);
					        u_xlat13.xy = u_xlat13.xy + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xy / u_xlat2.xy;
					        u_xlat13.xyz = u_xlat5.xyz * vec3(u_xlat31) + (-u_xlat3.xyz);
					        u_xlat5.x = dot(u_xlat13.xyz, u_xlat0.xyz);
					        u_xlat5.x = (-u_xlat27) * 0.00200000009 + u_xlat5.x;
					        u_xlat5.x = max(u_xlat5.x, 0.0);
					        u_xlat13.x = dot(u_xlat13.xyz, u_xlat13.xyz);
					        u_xlat13.x = u_xlat13.x + 9.99999975e-05;
					        u_xlat13.x = u_xlat5.x / u_xlat13.x;
					        u_xlat29 = u_xlat29 + u_xlat13.x;
					    }
					    u_xlat0.x = u_xlat29 * _Radius;
					    u_xlat0.x = u_xlat0.x * _Intensity;
					    u_xlat0.x = u_xlat0.x / u_xlat20.x;
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x * 0.600000024;
					    SV_Target0 = exp2(u_xlat0.xxxx);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[2];
						int _SampleCount;
						vec4 unused_0_2;
						float _Intensity;
						float _Radius;
						float _TargetScale;
						vec4 unused_0_6;
					};
					layout(std140) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ScreenParams;
						vec4 _ZBufferParams;
						vec4 unused_1_3;
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_2_0[32];
						mat4x4 unity_StereoCameraProjection[2];
						vec4 unused_2_2[12];
						mat4x4 unity_StereoWorldToCamera[2];
						vec4 unused_2_4[16];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _CameraDepthTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					float u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec2 u_xlat2;
					bvec2 u_xlatb2;
					vec3 u_xlat3;
					vec2 u_xlat4;
					vec4 u_xlat5;
					vec4 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					vec2 u_xlat8;
					vec3 u_xlat9;
					bool u_xlatb9;
					vec3 u_xlat10;
					vec3 u_xlat13;
					bool u_xlatb13;
					float u_xlat15;
					ivec2 u_xlati15;
					bvec2 u_xlatb15;
					float u_xlat19;
					ivec2 u_xlati19;
					bvec2 u_xlatb19;
					vec2 u_xlat20;
					int u_xlati22;
					bvec2 u_xlatb24;
					float u_xlat29;
					float u_xlat30;
					float u_xlat31;
					bool u_xlatb31;
					float u_xlat32;
					void main()
					{
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat1 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat9.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb9 = u_xlat9.x!=0.0;
					    u_xlat9.x = (u_xlatb9) ? -1.0 : -0.0;
					    u_xlat9.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + u_xlat9.xxx;
					    u_xlat1.xyz = u_xlat9.yyy * unity_StereoWorldToCamera[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xyz;
					    u_xlat1.xyz = unity_StereoWorldToCamera[u_xlati0 / 4][u_xlati0 % 4].xyz * u_xlat9.xxx + u_xlat1.xyz;
					    u_xlat9.xyz = unity_StereoWorldToCamera[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xyz * u_xlat9.zzz + u_xlat1.xyz;
					    u_xlat1 = texture(_CameraDepthTexture, vs_TEXCOORD0.xy);
					    u_xlat10.x = _ZBufferParams.z * u_xlat1.x + _ZBufferParams.w;
					    u_xlat10.x = float(1.0) / u_xlat10.x;
					    u_xlatb19.xy = lessThan(vs_TEXCOORD0.xyxy, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					    u_xlati19.x = int((uint(u_xlatb19.y) * 0xffffffffu) | (uint(u_xlatb19.x) * 0xffffffffu));
					    u_xlatb2.xy = lessThan(vec4(1.0, 1.0, 0.0, 0.0), vs_TEXCOORD0.xyxx).xy;
					    u_xlati19.y = int((uint(u_xlatb2.y) * 0xffffffffu) | (uint(u_xlatb2.x) * 0xffffffffu));
					    u_xlati19.xy = ivec2(uvec2(u_xlati19.xy) & uvec2(1u, 1u));
					    u_xlati19.x = u_xlati19.y + u_xlati19.x;
					    u_xlat19 = float(u_xlati19.x);
					    u_xlatb1 = 9.99999975e-06>=u_xlat1.x;
					    u_xlat1.x = u_xlatb1 ? 1.0 : float(0.0);
					    u_xlat1.x = u_xlat1.x + u_xlat19;
					    u_xlat1.x = u_xlat1.x * 100000000.0 + u_xlat10.x;
					    u_xlat10.xy = vs_TEXCOORD0.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat10.xy = u_xlat10.xy + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					    u_xlat2.x = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].x;
					    u_xlat2.y = unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].y;
					    u_xlat3.xy = u_xlat10.xy / u_xlat2.xy;
					    u_xlat3.z = 1.0;
					    u_xlat10.xyz = u_xlat1.xxx * u_xlat3.xyz;
					    u_xlat20.xy = vs_TEXCOORD0.xy * vec2(vec2(_TargetScale, _TargetScale));
					    u_xlat20.xy = u_xlat20.xy * _ScreenParams.xy;
					    u_xlat20.xy = floor(u_xlat20.xy);
					    u_xlat20.x = dot(vec2(0.0671105608, 0.00583714992), u_xlat20.xy);
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat20.x = u_xlat20.x * 52.9829178;
					    u_xlat20.x = fract(u_xlat20.x);
					    u_xlat29 = float(_SampleCount);
					    u_xlat4.x = 12.9898005;
					    u_xlat5.z = 1.0;
					    u_xlat30 = 0.0;
					    for(int u_xlati_loop_1 = 0 ; u_xlati_loop_1<_SampleCount ; u_xlati_loop_1++)
					    {
					        u_xlat31 = float(u_xlati_loop_1);
					        u_xlat31 = u_xlat31 * 1.00010002;
					        u_xlat4.y = floor(u_xlat31);
					        u_xlat31 = u_xlat4.y * 78.2330017;
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat6.z = u_xlat31 * 2.0 + -1.0;
					        u_xlat31 = dot(u_xlat4.xy, vec2(1.0, 78.2330017));
					        u_xlat31 = sin(u_xlat31);
					        u_xlat31 = u_xlat31 * 43758.5469;
					        u_xlat31 = fract(u_xlat31);
					        u_xlat31 = u_xlat20.x + u_xlat31;
					        u_xlat31 = u_xlat31 * 6.28318548;
					        u_xlat7 = sin(u_xlat31);
					        u_xlat8.x = cos(u_xlat31);
					        u_xlat31 = (-u_xlat6.z) * u_xlat6.z + 1.0;
					        u_xlat31 = sqrt(u_xlat31);
					        u_xlat8.y = u_xlat7;
					        u_xlat6.xy = vec2(u_xlat31) * u_xlat8.xy;
					        u_xlat13.x = u_xlat4.y + 1.0;
					        u_xlat13.x = u_xlat13.x / u_xlat29;
					        u_xlat13.x = sqrt(u_xlat13.x);
					        u_xlat13.x = u_xlat13.x * _Radius;
					        u_xlat6.xyz = u_xlat13.xxx * u_xlat6.xyz;
					        u_xlat13.x = dot((-u_xlat9.xyz), u_xlat6.xyz);
					        u_xlatb13 = u_xlat13.x>=0.0;
					        u_xlat6.xyz = (bool(u_xlatb13)) ? (-u_xlat6.xyz) : u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat3.xyz * u_xlat1.xxx + u_xlat6.xyz;
					        u_xlat13.xz = u_xlat6.yy * unity_StereoCameraProjection[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4].xy;
					        u_xlat13.xz = unity_StereoCameraProjection[u_xlati0 / 4][u_xlati0 % 4].xy * u_xlat6.xx + u_xlat13.xz;
					        u_xlat13.xz = unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy * u_xlat6.zz + u_xlat13.xz;
					        u_xlat13.xz = u_xlat13.xz / u_xlat6.zz;
					        u_xlat13.xz = u_xlat13.xz + vec2(1.0, 1.0);
					        u_xlat6.xy = u_xlat13.xz * vec2(0.5, 0.5);
					        u_xlat6 = texture(_CameraDepthTexture, u_xlat6.xy);
					        u_xlat32 = _ZBufferParams.z * u_xlat6.x + _ZBufferParams.w;
					        u_xlat32 = float(1.0) / u_xlat32;
					        u_xlatb15.xy = lessThan(u_xlat13.xzxx, vec4(0.0, 0.0, 0.0, 0.0)).xy;
					        u_xlati15.x = int((uint(u_xlatb15.y) * 0xffffffffu) | (uint(u_xlatb15.x) * 0xffffffffu));
					        u_xlatb24.xy = lessThan(vec4(2.0, 2.0, 2.0, 2.0), u_xlat13.xzxz).xy;
					        u_xlati15.y = int((uint(u_xlatb24.y) * 0xffffffffu) | (uint(u_xlatb24.x) * 0xffffffffu));
					        u_xlati15.xy = ivec2(uvec2(u_xlati15.xy) & uvec2(1u, 1u));
					        u_xlati15.x = u_xlati15.y + u_xlati15.x;
					        u_xlat15 = float(u_xlati15.x);
					        u_xlatb6 = 9.99999975e-06>=u_xlat6.x;
					        u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					        u_xlat6.x = u_xlat6.x + u_xlat15;
					        u_xlat32 = u_xlat6.x * 100000000.0 + u_xlat32;
					        u_xlat13.xz = u_xlat13.xz + (-unity_StereoCameraProjection[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4].xy);
					        u_xlat13.xz = u_xlat13.xz + vec2(-1.0, -1.0);
					        u_xlat5.xy = u_xlat13.xz / u_xlat2.xy;
					        u_xlat5.xyw = u_xlat5.xyz * vec3(u_xlat32) + (-u_xlat10.xyz);
					        u_xlat13.x = dot(u_xlat5.xyw, u_xlat9.xyz);
					        u_xlat13.x = (-u_xlat1.x) * 0.00200000009 + u_xlat13.x;
					        u_xlat13.x = max(u_xlat13.x, 0.0);
					        u_xlat31 = dot(u_xlat5.xyw, u_xlat5.xyw);
					        u_xlat31 = u_xlat31 + 9.99999975e-05;
					        u_xlat13.x = u_xlat13.x / u_xlat31;
					        u_xlat30 = u_xlat30 + u_xlat13.x;
					    }
					    u_xlat0 = u_xlat30 * _Radius;
					    u_xlat0 = u_xlat0 * _Intensity;
					    u_xlat0 = u_xlat0 / u_xlat29;
					    u_xlat0 = log2(u_xlat0);
					    u_xlat0 = u_xlat0 * 0.600000024;
					    SV_Target0 = exp2(vec4(u_xlat0));
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 253228
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat6;
					vec2 u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat12 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat12 = 2.0 / u_xlat12;
					    u_xlat1.xy = u_xlat4.xy * vec2(u_xlat12);
					    u_xlat1.z = u_xlat12 + -1.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat1.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat9 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat9 = 2.0 / u_xlat9;
					    u_xlat2.xy = u_xlat1.xy * vec2(u_xlat9);
					    u_xlat2.z = u_xlat9 + -1.0;
					    u_xlat1.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat8.x = u_xlat4.x * 0.317180604;
					    u_xlat4.x = u_xlat4.x * 0.317180604 + 0.370044053;
					    u_xlat0.x = u_xlat8.x * u_xlat0.x;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.x = u_xlat2.x * 0.370044053 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.317180604;
					    u_xlat4.x = u_xlat8.x * 0.317180604 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = u_xlat8.xy * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat8.xy = u_xlat8.xy * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.114537448;
					    u_xlat4.x = u_xlat13 * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.114537448;
					    u_xlat4.x = u_xlat8.x * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat6;
					vec2 u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat12 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat12 = 2.0 / u_xlat12;
					    u_xlat1.xy = u_xlat4.xy * vec2(u_xlat12);
					    u_xlat1.z = u_xlat12 + -1.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat1.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat9 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat9 = 2.0 / u_xlat9;
					    u_xlat2.xy = u_xlat1.xy * vec2(u_xlat9);
					    u_xlat2.z = u_xlat9 + -1.0;
					    u_xlat1.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat8.x = u_xlat4.x * 0.317180604;
					    u_xlat4.x = u_xlat4.x * 0.317180604 + 0.370044053;
					    u_xlat0.x = u_xlat8.x * u_xlat0.x;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.x = u_xlat2.x * 0.370044053 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.317180604;
					    u_xlat4.x = u_xlat8.x * 0.317180604 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = u_xlat8.xy * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat8.xy = u_xlat8.xy * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraDepthNormalsTexture, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat6.xyz = u_xlat3.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat13 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat13 = 2.0 / u_xlat13;
					    u_xlat3.xy = u_xlat6.xy * vec2(u_xlat13);
					    u_xlat3.z = u_xlat13 + -1.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.114537448;
					    u_xlat4.x = u_xlat13 * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.114537448;
					    u_xlat4.x = u_xlat8.x * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 300499
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					layout(std140) uniform UnityPerCameraRare {
						vec4 unused_1_0[14];
						mat4x4 unity_WorldToCamera;
						vec4 unused_1_2[4];
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					vec3 u_xlat6;
					vec3 u_xlat7;
					vec2 u_xlat8;
					bool u_xlatb8;
					float u_xlat12;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraGBufferTexture2, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb4 = u_xlat4.x!=0.0;
					    u_xlat4.x = (u_xlatb4) ? -1.0 : -0.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + u_xlat4.xxx;
					    u_xlat1.xyz = u_xlat4.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat1.xyz = unity_WorldToCamera[0].xyz * u_xlat4.xxx + u_xlat1.xyz;
					    u_xlat4.xyz = unity_WorldToCamera[2].xyz * u_xlat4.zzz + u_xlat1.xyz;
					    u_xlat1 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb13 = u_xlat13!=0.0;
					    u_xlat13 = (u_xlatb13) ? -1.0 : -0.0;
					    u_xlat1.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat13);
					    u_xlat2.xyz = u_xlat1.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat1.xyw = unity_WorldToCamera[0].xyz * u_xlat1.xxx + u_xlat2.xyz;
					    u_xlat1.xyz = unity_WorldToCamera[2].xyz * u_xlat1.zzz + u_xlat1.xyw;
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat8.x = u_xlat4.x * 0.317180604;
					    u_xlat4.x = u_xlat4.x * 0.317180604 + 0.370044053;
					    u_xlat0.x = u_xlat8.x * u_xlat0.x;
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat0.x = u_xlat2.x * 0.370044053 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraGBufferTexture2, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlatb8 = u_xlat8.x!=0.0;
					    u_xlat8.x = (u_xlatb8) ? -1.0 : -0.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(2.0, 2.0, 2.0) + u_xlat8.xxx;
					    u_xlat7.xyz = u_xlat2.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat2.xyw = unity_WorldToCamera[0].xyz * u_xlat2.xxx + u_xlat7.xyz;
					    u_xlat2.xyz = unity_WorldToCamera[2].xyz * u_xlat2.zzz + u_xlat2.xyw;
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.317180604;
					    u_xlat4.x = u_xlat8.x * 0.317180604 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb13 = u_xlat13!=0.0;
					    u_xlat13 = (u_xlatb13) ? -1.0 : -0.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat13);
					    u_xlat3.xyz = u_xlat6.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat3.xyz = unity_WorldToCamera[0].xyz * u_xlat6.xxx + u_xlat3.xyz;
					    u_xlat6.xyz = unity_WorldToCamera[2].xyz * u_xlat6.zzz + u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = u_xlat8.xy * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb13 = u_xlat13!=0.0;
					    u_xlat13 = (u_xlatb13) ? -1.0 : -0.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat13);
					    u_xlat3.xyz = u_xlat6.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat3.xyz = unity_WorldToCamera[0].xyz * u_xlat6.xxx + u_xlat3.xyz;
					    u_xlat6.xyz = unity_WorldToCamera[2].xyz * u_xlat6.zzz + u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.198237881;
					    u_xlat4.x = u_xlat13 * 0.198237881 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2.xy = (-u_xlat8.xy) * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat8.xy = u_xlat8.xy * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat2.xy);
					    u_xlat2 = texture(_MainTex, u_xlat2.xy);
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb13 = u_xlat13!=0.0;
					    u_xlat13 = (u_xlatb13) ? -1.0 : -0.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat13);
					    u_xlat3.xyz = u_xlat6.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat3.xyz = unity_WorldToCamera[0].xyz * u_xlat6.xxx + u_xlat3.xyz;
					    u_xlat6.xyz = unity_WorldToCamera[2].xyz * u_xlat6.zzz + u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat6.xyz);
					    u_xlat13 = u_xlat13 + 1.0;
					    u_xlat13 = u_xlat13 * 0.5;
					    u_xlat13 = log2(u_xlat13);
					    u_xlat13 = u_xlat13 * 50.0;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat6.x = u_xlat13 * 0.114537448;
					    u_xlat4.x = u_xlat13 * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat2.x * u_xlat6.x + u_xlat0.x;
					    u_xlat2 = texture(_CameraGBufferTexture2, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlatb8 = u_xlat8.x!=0.0;
					    u_xlat8.x = (u_xlatb8) ? -1.0 : -0.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(2.0, 2.0, 2.0) + u_xlat8.xxx;
					    u_xlat7.xyz = u_xlat2.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat2.xyw = unity_WorldToCamera[0].xyz * u_xlat2.xxx + u_xlat7.xyz;
					    u_xlat2.xyz = unity_WorldToCamera[2].xyz * u_xlat2.zzz + u_xlat2.xyw;
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat12 = u_xlat8.x * 0.114537448;
					    u_xlat4.x = u_xlat8.x * 0.114537448 + u_xlat4.x;
					    u_xlat0.x = u_xlat3.x * u_xlat12 + u_xlat0.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[48];
						mat4x4 unity_StereoWorldToCamera[2];
						vec4 unused_1_2[16];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					float u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					bool u_xlatb7;
					vec3 u_xlat8;
					vec3 u_xlat9;
					float u_xlat10;
					bool u_xlatb10;
					vec2 u_xlat11;
					float u_xlat15;
					int u_xlati15;
					bool u_xlatb15;
					float u_xlat16;
					bool u_xlatb16;
					void main()
					{
					    u_xlat0.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_MainTex, u_xlat0.xy);
					    u_xlat0 = texture(_CameraGBufferTexture2, u_xlat0.xy);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat6.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_MainTex, u_xlat6.xy);
					    u_xlat4 = texture(_CameraGBufferTexture2, u_xlat6.xy);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlatb15 = u_xlat15!=0.0;
					    u_xlat15 = (u_xlatb15) ? -1.0 : -0.0;
					    u_xlat6.xyz = u_xlat4.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat15);
					    u_xlati15 = unity_StereoEyeIndex << 2;
					    u_xlat7.xyz = u_xlat6.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat7.xyz = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat6.xxx + u_xlat7.xyz;
					    u_xlat6.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat6.zzz + u_xlat7.xyz;
					    u_xlat4 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat7.x = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlatb7 = u_xlat7.x!=0.0;
					    u_xlat7.x = (u_xlatb7) ? -1.0 : -0.0;
					    u_xlat7.xyz = u_xlat4.xyz * vec3(2.0, 2.0, 2.0) + u_xlat7.xxx;
					    u_xlat8.xyz = u_xlat7.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat8.xyz = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat7.xxx + u_xlat8.xyz;
					    u_xlat7.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat7.zzz + u_xlat8.xyz;
					    u_xlat6.x = dot(u_xlat7.xyz, u_xlat6.xyz);
					    u_xlat6.x = u_xlat6.x + 1.0;
					    u_xlat6.x = u_xlat6.x * 0.5;
					    u_xlat6.x = log2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x * 50.0;
					    u_xlat6.x = exp2(u_xlat6.x);
					    u_xlat6.x = u_xlat6.x * 0.317180604;
					    u_xlat11.x = u_xlat6.x * u_xlat3.x;
					    u_xlat11.x = u_xlat2.x * 0.370044053 + u_xlat11.x;
					    u_xlat16 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlatb16 = u_xlat16!=0.0;
					    u_xlat16 = (u_xlatb16) ? -1.0 : -0.0;
					    u_xlat0.xyz = u_xlat0.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat16);
					    u_xlat3.xyz = u_xlat0.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat3.xyz = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat0.xxx + u_xlat3.xyz;
					    u_xlat0.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat0.zzz + u_xlat3.xyz;
					    u_xlat0.x = dot(u_xlat7.xyz, u_xlat0.xyz);
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = u_xlat0.x * 0.5;
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat0.x = u_xlat0.x * 50.0;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat5 = u_xlat0.x * 0.317180604;
					    u_xlat0.x = u_xlat0.x * 0.317180604 + u_xlat6.x;
					    u_xlat5 = u_xlat1.x * u_xlat5 + u_xlat11.x;
					    u_xlat1.xy = _MainTex_TexelSize.xy * _BlurVector.xy;
					    u_xlat11.xy = (-u_xlat1.xy) * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat11.xy);
					    u_xlat4 = texture(_MainTex, u_xlat11.xy);
					    u_xlat10 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb10 = u_xlat10!=0.0;
					    u_xlat10 = (u_xlatb10) ? -1.0 : -0.0;
					    u_xlat3.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat10);
					    u_xlat9.xyz = u_xlat3.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat3.xyw = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat3.xxx + u_xlat9.xyz;
					    u_xlat3.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat3.zzz + u_xlat3.xyw;
					    u_xlat10 = dot(u_xlat7.xyz, u_xlat3.xyz);
					    u_xlat10 = u_xlat10 + 1.0;
					    u_xlat10 = u_xlat10 * 0.5;
					    u_xlat10 = log2(u_xlat10);
					    u_xlat10 = u_xlat10 * 50.0;
					    u_xlat10 = exp2(u_xlat10);
					    u_xlat11.x = u_xlat10 * 0.198237881;
					    u_xlat0.x = u_xlat10 * 0.198237881 + u_xlat0.x;
					    u_xlat5 = u_xlat4.x * u_xlat11.x + u_xlat5;
					    u_xlat11.xy = u_xlat1.xy * vec2(2.0, 2.0) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat11.xy);
					    u_xlat4 = texture(_MainTex, u_xlat11.xy);
					    u_xlat10 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb10 = u_xlat10!=0.0;
					    u_xlat10 = (u_xlatb10) ? -1.0 : -0.0;
					    u_xlat3.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat10);
					    u_xlat9.xyz = u_xlat3.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat3.xyw = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat3.xxx + u_xlat9.xyz;
					    u_xlat3.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat3.zzz + u_xlat3.xyw;
					    u_xlat10 = dot(u_xlat7.xyz, u_xlat3.xyz);
					    u_xlat10 = u_xlat10 + 1.0;
					    u_xlat10 = u_xlat10 * 0.5;
					    u_xlat10 = log2(u_xlat10);
					    u_xlat10 = u_xlat10 * 50.0;
					    u_xlat10 = exp2(u_xlat10);
					    u_xlat11.x = u_xlat10 * 0.198237881;
					    u_xlat0.x = u_xlat10 * 0.198237881 + u_xlat0.x;
					    u_xlat5 = u_xlat4.x * u_xlat11.x + u_xlat5;
					    u_xlat11.xy = (-u_xlat1.xy) * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat1.xy = u_xlat1.xy * vec2(3.23076916, 3.23076916) + vs_TEXCOORD0.xy;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat11.xy);
					    u_xlat4 = texture(_MainTex, u_xlat11.xy);
					    u_xlat10 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb10 = u_xlat10!=0.0;
					    u_xlat10 = (u_xlatb10) ? -1.0 : -0.0;
					    u_xlat3.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat10);
					    u_xlat9.xyz = u_xlat3.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat3.xyw = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat3.xxx + u_xlat9.xyz;
					    u_xlat3.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat3.zzz + u_xlat3.xyw;
					    u_xlat10 = dot(u_xlat7.xyz, u_xlat3.xyz);
					    u_xlat10 = u_xlat10 + 1.0;
					    u_xlat10 = u_xlat10 * 0.5;
					    u_xlat10 = log2(u_xlat10);
					    u_xlat10 = u_xlat10 * 50.0;
					    u_xlat10 = exp2(u_xlat10);
					    u_xlat11.x = u_xlat10 * 0.114537448;
					    u_xlat0.x = u_xlat10 * 0.114537448 + u_xlat0.x;
					    u_xlat5 = u_xlat4.x * u_xlat11.x + u_xlat5;
					    u_xlat3 = texture(_CameraGBufferTexture2, u_xlat1.xy);
					    u_xlat1 = texture(_MainTex, u_xlat1.xy);
					    u_xlat10 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlatb10 = u_xlat10!=0.0;
					    u_xlat10 = (u_xlatb10) ? -1.0 : -0.0;
					    u_xlat6.xyz = u_xlat3.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat10);
					    u_xlat3.xyz = u_xlat6.yyy * unity_StereoWorldToCamera[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].xyz;
					    u_xlat3.xyz = unity_StereoWorldToCamera[u_xlati15 / 4][u_xlati15 % 4].xyz * u_xlat6.xxx + u_xlat3.xyz;
					    u_xlat6.xyz = unity_StereoWorldToCamera[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].xyz * u_xlat6.zzz + u_xlat3.xyz;
					    u_xlat10 = dot(u_xlat7.xyz, u_xlat6.xyz);
					    u_xlat10 = u_xlat10 + 1.0;
					    u_xlat10 = u_xlat10 * 0.5;
					    u_xlat10 = log2(u_xlat10);
					    u_xlat10 = u_xlat10 * 50.0;
					    u_xlat10 = exp2(u_xlat10);
					    u_xlat15 = u_xlat10 * 0.114537448;
					    u_xlat0.x = u_xlat10 * 0.114537448 + u_xlat0.x;
					    u_xlat0.x = u_xlat0.x + 0.370044053;
					    u_xlat5 = u_xlat1.x * u_xlat15 + u_xlat5;
					    SV_Target0 = vec4(u_xlat5) / u_xlat0.xxxx;
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 376517
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec2 u_xlat8;
					float u_xlat9;
					float u_xlat12;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat12 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat12 = 2.0 / u_xlat12;
					    u_xlat1.xy = u_xlat4.xy * vec2(u_xlat12);
					    u_xlat1.z = u_xlat12 + -1.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat1.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat9 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat9 = 2.0 / u_xlat9;
					    u_xlat2.xy = u_xlat1.xy * vec2(u_xlat9);
					    u_xlat2.z = u_xlat9 + -1.0;
					    u_xlat1.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat8.x = u_xlat2.x + u_xlat2.x;
					    u_xlat0.x = u_xlat0.x * u_xlat4.x + u_xlat8.x;
					    u_xlat4.x = u_xlat4.x + 2.0;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat0.x = u_xlat3.x * u_xlat8.x + u_xlat0.x;
					    u_xlat4.x = u_xlat8.x + u_xlat4.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					uniform  sampler2D _CameraDepthNormalsTexture;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec2 u_xlat8;
					float u_xlat9;
					float u_xlat12;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraDepthNormalsTexture, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat12 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat12 = 2.0 / u_xlat12;
					    u_xlat1.xy = u_xlat4.xy * vec2(u_xlat12);
					    u_xlat1.z = u_xlat12 + -1.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat1 = texture(_CameraDepthNormalsTexture, vs_TEXCOORD0.xy);
					    u_xlat1.xyz = u_xlat1.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat9 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat9 = 2.0 / u_xlat9;
					    u_xlat2.xy = u_xlat1.xy * vec2(u_xlat9);
					    u_xlat2.z = u_xlat9 + -1.0;
					    u_xlat1.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat8.x = u_xlat2.x + u_xlat2.x;
					    u_xlat0.x = u_xlat0.x * u_xlat4.x + u_xlat8.x;
					    u_xlat4.x = u_xlat4.x + 2.0;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraDepthNormalsTexture, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat2.xyz = u_xlat2.xyz * vec3(3.55539989, 3.55539989, 0.0) + vec3(-1.77769995, -1.77769995, 1.0);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat8.x = 2.0 / u_xlat8.x;
					    u_xlat2.xy = u_xlat2.xy * u_xlat8.xx;
					    u_xlat2.z = u_xlat8.x + -1.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(1.0, 1.0, -1.0);
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat0.x = u_xlat3.x * u_xlat8.x + u_xlat0.x;
					    u_xlat4.x = u_xlat8.x + u_xlat4.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 404288
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_0_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					vec4 u_xlat0;
					int u_xlati1;
					vec4 u_xlat2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					layout(std140) uniform UnityPerCameraRare {
						vec4 unused_1_0[14];
						mat4x4 unity_WorldToCamera;
						vec4 unused_1_2[4];
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					vec3 u_xlat7;
					vec2 u_xlat8;
					bool u_xlatb8;
					float u_xlat13;
					bool u_xlatb13;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraGBufferTexture2, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb4 = u_xlat4.x!=0.0;
					    u_xlat4.x = (u_xlatb4) ? -1.0 : -0.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + u_xlat4.xxx;
					    u_xlat1.xyz = u_xlat4.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat1.xyz = unity_WorldToCamera[0].xyz * u_xlat4.xxx + u_xlat1.xyz;
					    u_xlat4.xyz = unity_WorldToCamera[2].xyz * u_xlat4.zzz + u_xlat1.xyz;
					    u_xlat1 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat13 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb13 = u_xlat13!=0.0;
					    u_xlat13 = (u_xlatb13) ? -1.0 : -0.0;
					    u_xlat1.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + vec3(u_xlat13);
					    u_xlat2.xyz = u_xlat1.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat1.xyw = unity_WorldToCamera[0].xyz * u_xlat1.xxx + u_xlat2.xyz;
					    u_xlat1.xyz = unity_WorldToCamera[2].xyz * u_xlat1.zzz + u_xlat1.xyw;
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat8.x = u_xlat2.x + u_xlat2.x;
					    u_xlat0.x = u_xlat0.x * u_xlat4.x + u_xlat8.x;
					    u_xlat4.x = u_xlat4.x + 2.0;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraGBufferTexture2, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlatb8 = u_xlat8.x!=0.0;
					    u_xlat8.x = (u_xlatb8) ? -1.0 : -0.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(2.0, 2.0, 2.0) + u_xlat8.xxx;
					    u_xlat7.xyz = u_xlat2.yyy * unity_WorldToCamera[1].xyz;
					    u_xlat2.xyw = unity_WorldToCamera[0].xyz * u_xlat2.xxx + u_xlat7.xyz;
					    u_xlat2.xyz = unity_WorldToCamera[2].xyz * u_xlat2.zzz + u_xlat2.xyw;
					    u_xlat8.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat0.x = u_xlat3.x * u_xlat8.x + u_xlat0.x;
					    u_xlat4.x = u_xlat8.x + u_xlat4.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2;
						vec2 _BlurVector;
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_1_0[48];
						mat4x4 unity_StereoWorldToCamera[2];
						vec4 unused_1_2[16];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					uniform  sampler2D _CameraGBufferTexture2;
					uniform  sampler2D _MainTex;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					bool u_xlatb4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat7;
					vec2 u_xlat8;
					bool u_xlatb8;
					void main()
					{
					    u_xlat0.xy = (-_MainTex_TexelSize.xy) * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat1 = texture(_CameraGBufferTexture2, u_xlat0.xy);
					    u_xlat0 = texture(_MainTex, u_xlat0.xy);
					    u_xlat4.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlatb4 = u_xlat4.x!=0.0;
					    u_xlat4.x = (u_xlatb4) ? -1.0 : -0.0;
					    u_xlat4.xyz = u_xlat1.xyz * vec3(2.0, 2.0, 2.0) + u_xlat4.xxx;
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat5.xyz = u_xlat4.yyy * unity_StereoWorldToCamera[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].xyz;
					    u_xlat5.xyz = unity_StereoWorldToCamera[u_xlati1 / 4][u_xlati1 % 4].xyz * u_xlat4.xxx + u_xlat5.xyz;
					    u_xlat4.xyz = unity_StereoWorldToCamera[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].xyz * u_xlat4.zzz + u_xlat5.xyz;
					    u_xlat2 = texture(_CameraGBufferTexture2, vs_TEXCOORD0.xy);
					    u_xlat5.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlatb5 = u_xlat5.x!=0.0;
					    u_xlat5.x = (u_xlatb5) ? -1.0 : -0.0;
					    u_xlat5.xyz = u_xlat2.xyz * vec3(2.0, 2.0, 2.0) + u_xlat5.xxx;
					    u_xlat2.xyz = u_xlat5.yyy * unity_StereoWorldToCamera[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].xyz;
					    u_xlat2.xyz = unity_StereoWorldToCamera[u_xlati1 / 4][u_xlati1 % 4].xyz * u_xlat5.xxx + u_xlat2.xyz;
					    u_xlat5.xyz = unity_StereoWorldToCamera[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].xyz * u_xlat5.zzz + u_xlat2.xyz;
					    u_xlat4.x = dot(u_xlat5.xyz, u_xlat4.xyz);
					    u_xlat4.x = u_xlat4.x + 1.0;
					    u_xlat4.x = u_xlat4.x * 0.5;
					    u_xlat4.x = log2(u_xlat4.x);
					    u_xlat4.x = u_xlat4.x * 50.0;
					    u_xlat4.x = exp2(u_xlat4.x);
					    u_xlat2 = texture(_MainTex, vs_TEXCOORD0.xy);
					    u_xlat8.x = u_xlat2.x + u_xlat2.x;
					    u_xlat0.x = u_xlat0.x * u_xlat4.x + u_xlat8.x;
					    u_xlat4.x = u_xlat4.x + 2.0;
					    u_xlat8.xy = _MainTex_TexelSize.xy * _BlurVector.xy + vs_TEXCOORD0.xy;
					    u_xlat2 = texture(_CameraGBufferTexture2, u_xlat8.xy);
					    u_xlat3 = texture(_MainTex, u_xlat8.xy);
					    u_xlat8.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlatb8 = u_xlat8.x!=0.0;
					    u_xlat8.x = (u_xlatb8) ? -1.0 : -0.0;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(2.0, 2.0, 2.0) + u_xlat8.xxx;
					    u_xlat7.xyz = u_xlat2.yyy * unity_StereoWorldToCamera[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4].xyz;
					    u_xlat2.xyw = unity_StereoWorldToCamera[u_xlati1 / 4][u_xlati1 % 4].xyz * u_xlat2.xxx + u_xlat7.xyz;
					    u_xlat2.xyz = unity_StereoWorldToCamera[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4].xyz * u_xlat2.zzz + u_xlat2.xyw;
					    u_xlat8.x = dot(u_xlat5.xyz, u_xlat2.xyz);
					    u_xlat8.x = u_xlat8.x + 1.0;
					    u_xlat8.x = u_xlat8.x * 0.5;
					    u_xlat8.x = log2(u_xlat8.x);
					    u_xlat8.x = u_xlat8.x * 50.0;
					    u_xlat8.x = exp2(u_xlat8.x);
					    u_xlat0.x = u_xlat3.x * u_xlat8.x + u_xlat0.x;
					    u_xlat4.x = u_xlat8.x + u_xlat4.x;
					    SV_Target0 = u_xlat0.xxxx / u_xlat4.xxxx;
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 507151
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_1_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					 vec4 phase0_Output0_1;
					out vec2 vs_TEXCOORD1;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					float u_xlat2;
					int u_xlati2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlati0 = int((0.0<_MainTex_TexelSize.y) ? 0xFFFFFFFFu : uint(0));
					    u_xlati2 = int((_MainTex_TexelSize.y<0.0) ? 0xFFFFFFFFu : uint(0));
					    u_xlati0 = (-u_xlati0) + u_xlati2;
					    u_xlat0.x = float(u_xlati0);
					    u_xlat2 = in_TEXCOORD0.y + -0.5;
					    phase0_Output0_1.w = u_xlat2 * u_xlat0.x + 0.5;
					    phase0_Output0_1.xyz = in_TEXCOORD0.xyx;
					vs_TEXCOORD0 = phase0_Output0_1.xy;
					vs_TEXCOORD1 = phase0_Output0_1.zw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_1_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					 vec4 phase0_Output0_1;
					out vec2 vs_TEXCOORD1;
					vec4 u_xlat0;
					int u_xlati0;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati3;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    u_xlati0 = int((0.0<_MainTex_TexelSize.y) ? 0xFFFFFFFFu : uint(0));
					    u_xlati3 = int((_MainTex_TexelSize.y<0.0) ? 0xFFFFFFFFu : uint(0));
					    u_xlati0 = (-u_xlati0) + u_xlati3;
					    u_xlat0.x = float(u_xlati0);
					    u_xlat3 = in_TEXCOORD0.y + -0.5;
					    phase0_Output0_1.w = u_xlat3 * u_xlat0.x + 0.5;
					    phase0_Output0_1.xyz = in_TEXCOORD0.xyx;
					vs_TEXCOORD0 = phase0_Output0_1.xy;
					vs_TEXCOORD1 = phase0_Output0_1.zw;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _MainTex;
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					in  vec2 vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD1.xy);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    SV_Target0.xyz = u_xlat0.xxx * (-u_xlat1.xyz) + u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _MainTex;
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					in  vec2 vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD1.xy);
					    u_xlat1 = texture(_MainTex, vs_TEXCOORD0.xy);
					    SV_Target0.xyz = u_xlat0.xxx * (-u_xlat1.xyz) + u_xlat1.xyz;
					    SV_Target0.w = u_xlat1.w;
					    return;
					}"
				}
			}
		}
		Pass {
			Blend Zero OneMinusSrcColor, Zero OneMinusSrcAlpha
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 554623
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					void main()
					{
					    gl_Position = in_POSITION0 * vec4(2.0, 2.0, 0.0, 0.0) + vec4(0.0, 0.0, 0.0, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * vec2(1.0, -1.0) + vec2(0.0, 1.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					void main()
					{
					    gl_Position = in_POSITION0 * vec4(2.0, 2.0, 0.0, 0.0) + vec4(0.0, 0.0, 0.0, 1.0);
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy * vec2(1.0, -1.0) + vec2(0.0, 1.0);
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					layout(location = 1) out vec4 SV_Target1;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD0.xy).yzwx;
					    u_xlat0.x = 0.0;
					    SV_Target0 = u_xlat0.xxxw;
					    SV_Target1 = u_xlat0.wwwx;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					layout(location = 1) out vec4 SV_Target1;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD0.xy).yzwx;
					    u_xlat0.x = 0.0;
					    SV_Target0 = u_xlat0.xxxw;
					    SV_Target1 = u_xlat0.wwwx;
					    return;
					}"
				}
			}
		}
		Pass {
			ZTest Always
			ZWrite Off
			Cull Off
			GpuProgramID 593599
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_1_1[7];
					};
					layout(std140) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					 vec4 phase0_Output0_1;
					out vec2 vs_TEXCOORD1;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					float u_xlat2;
					int u_xlati2;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlat1 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat1 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
					    u_xlat1 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
					    gl_Position = unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
					    u_xlati0 = int((0.0<_MainTex_TexelSize.y) ? 0xFFFFFFFFu : uint(0));
					    u_xlati2 = int((_MainTex_TexelSize.y<0.0) ? 0xFFFFFFFFu : uint(0));
					    u_xlati0 = (-u_xlati0) + u_xlati2;
					    u_xlat0.x = float(u_xlati0);
					    u_xlat2 = in_TEXCOORD0.y + -0.5;
					    phase0_Output0_1.w = u_xlat2 * u_xlat0.x + 0.5;
					    phase0_Output0_1.xyz = in_TEXCOORD0.xyx;
					vs_TEXCOORD0 = phase0_Output0_1.xy;
					vs_TEXCOORD1 = phase0_Output0_1.zw;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					layout(std140) uniform VGlobals {
						vec4 unused_0_0[3];
						vec4 _MainTex_TexelSize;
						vec4 unused_0_2[2];
					};
					layout(std140) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						vec4 unused_1_1[7];
					};
					layout(std140) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[40];
					};
					layout(std140) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					in  vec4 in_POSITION0;
					in  vec2 in_TEXCOORD0;
					out vec2 vs_TEXCOORD0;
					 vec4 phase0_Output0_1;
					out vec2 vs_TEXCOORD1;
					vec4 u_xlat0;
					int u_xlati0;
					int u_xlati1;
					vec4 u_xlat2;
					float u_xlat3;
					int u_xlati3;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_ObjectToWorld[3];
					    u_xlati1 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati1 + 1) / 4][(u_xlati1 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati1 / 4][u_xlati1 % 4] * u_xlat0.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati1 + 2) / 4][(u_xlati1 + 2) % 4] * u_xlat0.zzzz + u_xlat2;
					    gl_Position = unity_StereoMatrixVP[(u_xlati1 + 3) / 4][(u_xlati1 + 3) % 4] * u_xlat0.wwww + u_xlat2;
					    u_xlati0 = int((0.0<_MainTex_TexelSize.y) ? 0xFFFFFFFFu : uint(0));
					    u_xlati3 = int((_MainTex_TexelSize.y<0.0) ? 0xFFFFFFFFu : uint(0));
					    u_xlati0 = (-u_xlati0) + u_xlati3;
					    u_xlat0.x = float(u_xlati0);
					    u_xlat3 = in_TEXCOORD0.y + -0.5;
					    phase0_Output0_1.w = u_xlat3 * u_xlat0.x + 0.5;
					    phase0_Output0_1.xyz = in_TEXCOORD0.xyx;
					vs_TEXCOORD0 = phase0_Output0_1.xy;
					vs_TEXCOORD1 = phase0_Output0_1.zw;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _MainTex;
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					in  vec2 vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD1.xy);
					    SV_Target0.xyz = (-u_xlat0.xxx) + vec3(1.0, 1.0, 1.0);
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    SV_Target0.w = u_xlat0.w;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_4_0
					
					#version 330
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					uniform  sampler2D _MainTex;
					uniform  sampler2D _OcclusionTexture;
					in  vec2 vs_TEXCOORD0;
					in  vec2 vs_TEXCOORD1;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					void main()
					{
					    u_xlat0 = texture(_OcclusionTexture, vs_TEXCOORD1.xy);
					    SV_Target0.xyz = (-u_xlat0.xxx) + vec3(1.0, 1.0, 1.0);
					    u_xlat0 = texture(_MainTex, vs_TEXCOORD0.xy);
					    SV_Target0.w = u_xlat0.w;
					    return;
					}"
				}
			}
		}
	}
}