Shader "Hidden/.poiyomi/★ Poiyomi Pro ★/Материал 9-9f45de4a" {
	Properties {
		[HideInInspector] shader_is_using_thry_editor ("", Float) = 0
		[HideInInspector] shader_master_label ("<color=#000000ff>Poiyomi Pro V7.1.41</color>", Float) = 0
		[HideInInspector] shader_presets ("poiToonPresets", Float) = 0
		[HideInInspector] shader_properties_label_file ("7PlusLabels", Float) = 0
		[HideInInspector] footer_youtube ("youtube footer button", Float) = 0
		[HideInInspector] footer_twitter ("twitter footer button", Float) = 0
		[HideInInspector] footer_patreon ("patreon footer button", Float) = 0
		[HideInInspector] footer_discord ("discord footer button", Float) = 0
		[HideInInspector] footer_github ("github footer button", Float) = 0
		[HideInInspector] _ForgotToLockMaterial (";;YOU_FORGOT_TO_LOCK_THIS_MATERIAL;", Float) = 1
		[ThryShaderOptimizerLockButton] _ShaderOptimizerEnabled ("", Float) = 0
		[Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Float) = 0
		[ThryWideEnum(Opaque, 0, Cutout, 1, TransClipping, 9, Fade, 2, Transparent, 3, Additive, 4, Soft Additive, 5, Multiplicative, 6, 2x Multiplicative, 7, Multiplicative Grab Pass, 8)] _Mode ("Rendering Preset--{on_value_actions:[ 
            {value:0,actions:[{type:SET_PROPERTY,data:render_queue=2000}, {type:SET_PROPERTY,data:render_type=Opaque},            {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:1,actions:[{type:SET_PROPERTY,data:render_queue=2460}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=.5}, {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0},  {type:SET_PROPERTY,data:_AlphaToMask=1},  {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:9,actions:[{type:SET_PROPERTY,data:render_queue=2460}, {type:SET_PROPERTY,data:render_type=TransparentCutout}, {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:2,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Transparent},       {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=5}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:3,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Transparent},       {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=10}, {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=1}]},
            {value:4,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Transparent},       {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=1},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:5,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:RenderType=Transparent},        {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=4}, {type:SET_PROPERTY,data:_DstBlend=1},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:6,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Transparent},       {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=0},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:7,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Transparent},       {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=2}, {type:SET_PROPERTY,data:_DstBlend=3},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=0}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]},
            {value:8,actions:[{type:SET_PROPERTY,data:render_queue=3010}, {type:SET_PROPERTY,data:render_type=Opaque},            {type:SET_PROPERTY,data:_BlendOp=0}, {type:SET_PROPERTY,data:_BlendOpAlpha=0}, {type:SET_PROPERTY,data:_Cutoff=0},  {type:SET_PROPERTY,data:_SrcBlend=1}, {type:SET_PROPERTY,data:_DstBlend=0},  {type:SET_PROPERTY,data:_AlphaToMask=0},  {type:SET_PROPERTY,data:_ZWrite=1}, {type:SET_PROPERTY,data:_ZTest=4},   {type:SET_PROPERTY,data:_AlphaPremultiply=0}]}
        }]}]}", Float) = 0
		[HideInInspector] m_mainOptions ("Main", Float) = 0
		_Color ("Color & Alpha", Vector) = (1,1,1,1)
		_MainTex ("Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _MainTexPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MainTextureUV ("UV", Float) = 0
		_MainEmissionStrength ("Basic Emission", Range(0, 20)) = 0
		[Normal] _BumpMap ("Normal Map", 2D) = "bump" {}
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _BumpMapUV ("UV", Float) = 0
		[Vector2] [HideInInspector] _BumpMapPan ("Panning", Vector) = (0,0,0,0)
		_BumpScale ("Normal Intensity", Range(0, 10)) = 1
		_ClippingMask ("Alpha Map--{reference_properties:[_ClippingMaskPan, _ClippingMaskUV, _Inverse_Clipping]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _ClippingMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _ClippingMaskUV ("UV", Float) = 0
		[ToggleUI] _Inverse_Clipping ("Invert", Float) = 0
		[HideInInspector] m_start_MainHueShift ("Color Adjust", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MainColorAdjustTextureUV ("UV", Float) = 0
		[ToggleUI] _MainHueShiftReplace ("Hue Replace?", Float) = 1
		_MainHueShift ("Hue Shift", Range(0, 1)) = 0
		_MainHueShiftSpeed ("Hue Shift Speed", Float) = 0
		_Saturation ("Saturation", Range(-1, 10)) = 0
		_MainBrightness ("Brightness", Range(-1, 1)) = 0
		[ThryToggle(COLOR_GRADING_HDR)] [HideInInspector] _MainHueShiftToggle ("Toggle Hueshift", Float) = 0
		_MainColorAdjustTexture ("Mask R(H) G(S) B(B)--{reference_properties:[_MainColorAdjustTexturePan, _MainColorAdjustTextureUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _MainColorAdjustTexturePan ("Panning", Vector) = (0,0,0,0)
		[HideInInspector] m_end_MainHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_start_RGBMask ("RGB Color Masking", Float) = 0
		[ThryToggle(VIGNETTE)] [HideInInspector] _RGBMaskEnabled ("RGB Mask Enabled", Float) = 0
		[ToggleUI] _RGBUseVertexColors ("Use Vertex Colors", Float) = 0
		[ToggleUI] _RGBBlendMultiplicative ("Multiplicative?", Float) = 0
		_RGBMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _RGBMaskPanning ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RGBMaskUV ("UV", Float) = 0
		_RedColor ("R Color", Vector) = (1,1,1,1)
		_RedTexure ("R Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _RGBRedPanning ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RGBRed_UV ("UV", Float) = 0
		_GreenColor ("G Color", Vector) = (1,1,1,1)
		_GreenTexture ("G Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _RGBGreenPanning ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RGBGreen_UV ("UV", Float) = 0
		_BlueColor ("B Color", Vector) = (1,1,1,1)
		_BlueTexture ("B Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _RGBBluePanning ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RGBBlue_UV ("UV", Float) = 0
		[ThryToggle(GEOM_TYPE_MESH)] _RgbNormalsEnabled ("Enable Normals", Float) = 0
		[ToggleUI] _RGBNormalBlend ("Blend with Base--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Float) = 0
		[Normal] _RgbNormalR ("R Normal--{reference_properties:[_RgbNormalRPan, _RgbNormalRUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" {}
		[HideInInspector] _RgbNormalRPan ("Pan", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RgbNormalRUV ("UV", Float) = 0
		_RgbNormalRScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0, 10)) = 0
		[Normal] _RgbNormalG ("G Normal--{reference_properties:[_RgbNormalGPan, _RgbNormalGUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" {}
		[HideInInspector] _RgbNormalGPan ("Pan", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RgbNormalGUV ("UV", Float) = 0
		_RgbNormalGScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0, 10)) = 0
		[Normal] _RgbNormalB ("B Normal--{reference_properties:[_RgbNormalBPan, _RgbNormalBUV],condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", 2D) = "bump" {}
		[HideInInspector] _RgbNormalBPan ("Pan", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RgbNormalBUV ("UV", Float) = 0
		_RgbNormalBScale ("Intensity--{condition_show:{type:PROPERTY_BOOL,data:_RgbNormalsEnabled==1}}", Range(0, 10)) = 0
		[HideInInspector] m_end_RGBMask ("RGB Color Masking", Float) = 0
		[HideInInspector] m_start_DetailOptions ("Details--{reference_property:_DetailEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=9oIcQln9of4&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
		[ThryToggle(FINALPASS)] [HideInInspector] _DetailEnabled ("Enable", Float) = 0
		_DetailMask ("Detail Mask (R:Texture, G:Normal)", 2D) = "white" {}
		[Vector2] [HideInInspector] _DetailMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DetailMaskUV ("UV", Float) = 0
		_DetailTint ("Detail Texture Tint", Vector) = (1,1,1,1)
		_DetailTex ("Detail Texture", 2D) = "gray" {}
		[Vector2] [HideInInspector] _DetailTexPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DetailTexUV ("UV", Float) = 0
		_DetailTexIntensity ("Detail Tex Intensity", Range(0, 10)) = 1
		_DetailBrightness ("Detail Brightness:", Range(0, 2)) = 1
		[Normal] _DetailNormalMap ("Detail Normal", 2D) = "bump" {}
		_DetailNormalMapScale ("Detail Normal Intensity", Range(0, 10)) = 1
		[Vector2] [HideInInspector] _DetailNormalMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DetailNormalMapUV ("UV", Float) = 0
		[HideInInspector] m_end_DetailOptions ("Details", Float) = 0
		[HideInInspector] m_start_MainVertexColors ("Vertex Colors", Float) = 0
		_MainVertexColoring ("Use Vertex Color", Range(0, 1)) = 0
		_MainUseVertexColorAlpha ("Use Vertex Color Alpha", Range(0, 1)) = 0
		[HideInInspector] m_end_MainVertexColors ("Vertex Colors", Float) = 0
		[HideInInspector] m_start_vertexManipulation ("Vertex Offset--{reference_property:_VertexManipulationsEnabled, button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=x728WN50JeA&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},is_hideable:true}", Float) = 0
		[ThryToggle(AUTO_EXPOSURE)] [HideInInspector] _VertexManipulationsEnabled ("Enabled", Float) = 0
		[Vector3] _VertexManipulationLocalTranslation ("Local Translation", Vector) = (0,0,0,1)
		[Vector3] _VertexManipulationLocalRotation ("Local Rotation", Vector) = (0,0,0,1)
		[Vector3] _VertexManipulationLocalScale ("Local Scale", Vector) = (1,1,1,1)
		[Vector3] _VertexManipulationWorldTranslation ("World Translation", Vector) = (0,0,0,1)
		_VertexManipulationHeight ("Vertex Height", Float) = 0
		_VertexManipulationHeightMask ("Height Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _VertexManipulationHeightPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] [HideInInspector] _VertexManipulationHeightUV ("UV", Float) = 0
		_VertexManipulationHeightBias ("Mask Bias", Range(0, 1)) = 0
		[ToggleUI] _VertexRoundingEnabled ("Rounding Enabled", Float) = 0
		_VertexRoundingDivision ("Division Amount", Float) = 500
		[HideInInspector] m_end_vertexManipulation ("Vertex Offset", Float) = 0
		[HideInInspector] m_start_Alpha ("Alpha Options", Float) = 0
		_Cutoff ("Alpha Cuttoff", Range(0, 1.001)) = 0.5
		[ToggleUI] _DitheringEnabled ("Enable Dithering", Float) = 0
		_DitherGradient ("Dither Gradient", Range(0, 1)) = 0.1
		[ToggleUI] _ForceOpaque ("Force Opaque", Float) = 0
		_MainShadowClipMod ("Shadow Clip Mod", Range(-1, 1)) = 0
		[Enum(Off, 0, On, 1)] _AlphaToMask ("Alpha To Coverage", Float) = 0
		[ToggleUI] _MainAlphaToCoverage ("Sharpenned A2C--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Float) = 0
		_MainMipScale ("Mip Level Alpha Scale--{condition_show:{type:PROPERTY_BOOL,data:_AlphaToMask==1}}", Range(0, 1)) = 0.25
		[ToggleUI] _AlphaPremultiply ("Alpha Premultiply", Float) = 0
		_AlphaMod ("Alpha Mod", Range(-1, 1)) = 0
		[HideInInspector] m_end_Alpha ("Alpha Options", Float) = 0
		[HideInInspector] m_start_DecalSection ("Decals--{button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=xHoQVN_F7JE&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw},hover:YouTube},reference_property:_DecalEnabled,is_hideable:true}", Float) = 0
		_DecalMask ("Decal RGBA Mask--{reference_properties:[_DecalMaskPan, _DecalMaskUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DecalMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DecalMaskUV ("UV", Float) = 0
		[HideInInspector] m_start_Decal0 ("Decal 0", Float) = 0
		[ThryToggle(GEOM_TYPE_BRANCH)] [HideInInspector] _DecalEnabled ("Enable", Float) = 0
		_DecalColor ("Color", Vector) = (1,1,1,1)
		_DecalEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		_DecalTexture ("Decal--{reference_properties:[_DecalTexturePan, _DecalTextureUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DecalTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DecalTextureUV ("UV", Float) = 0
		[ToggleUI] _DecalTiled ("Tiled?", Float) = 0
		[Vector2] _DecalScale ("Scale", Vector) = (1,1,0,0)
		[Vector2] _DecalPosition ("Position", Vector) = (0.5,0.5,0,0)
		_DecalRotation ("Rotation", Range(0, 360)) = 0
		_DecalRotationSpeed ("Rotation Speed", Float) = 0
		[ThryWideEnum(Replace, 0, Darken, 1, Multiply, 2, Color Burn, 3, Linear Burn, 4, Lighten, 5, Screen, 6, Color Dodge, 7, Linear Dodge (Add), 8, Overlay, 9, Soft Lighten, 10, Hard Light, 11, Vivid Light, 12, Linear Light, 13, Pin Light, 14, Hard Mix, 15, Difference, 16, Exclusion, 17, Subtract, 18, Divide, 19)] _DecalBlendType ("Blending", Range(0, 1)) = 0
		_DecalBlendAlpha ("Alpha", Range(0, 1)) = 1
		[ToggleUI] _DecalHueShiftEnabled ("Hue Shift Enabled", Float) = 0
		_DecalHueShiftSpeed ("Shift Speed", Float) = 0
		_DecalHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_Decal0 ("Decal 0", Float) = 0
		[HideInInspector] m_start_Decal1 ("Decal 1--{reference_property:_DecalEnabled1}", Float) = 0
		[ThryToggle(GEOM_TYPE_BRANCH_DETAIL)] [HideInInspector] _DecalEnabled1 ("Enable", Float) = 0
		_DecalColor1 ("Color", Vector) = (1,1,1,1)
		_DecalEmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
		_DecalTexture1 ("Decal--{reference_properties:[_DecalTexture1Pan, _DecalTexture1UV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DecalTexture1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DecalTexture1UV ("UV", Float) = 0
		[ToggleUI] _DecalTiled1 ("Tiled?", Float) = 0
		[Vector2] _DecalScale1 ("Scale", Vector) = (1,1,0,0)
		[Vector2] _DecalPosition1 ("Position", Vector) = (0.5,0.5,0,0)
		_DecalRotation1 ("Rotation", Range(0, 360)) = 0
		_DecalRotationSpeed1 ("Rotation Speed", Float) = 0
		[ThryWideEnum(Replace, 0, Darken, 1, Multiply, 2, Color Burn, 3, Linear Burn, 4, Lighten, 5, Screen, 6, Color Dodge, 7, Linear Dodge (Add), 8, Overlay, 9, Soft Lighten, 10, Hard Light, 11, Vivid Light, 12, Linear Light, 13, Pin Light, 14, Hard Mix, 15, Difference, 16, Exclusion, 17, Subtract, 18, Divide, 19)] _DecalBlendType1 ("Blending", Range(0, 1)) = 0
		_DecalBlendAlpha1 ("Alpha", Range(0, 1)) = 1
		[ToggleUI] _DecalHueShiftEnabled1 ("Hue Shift Enabled", Float) = 0
		_DecalHueShiftSpeed1 ("Shift Speed", Float) = 0
		_DecalHueShift1 ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_Decal1 ("Decal 0", Float) = 0
		[HideInInspector] m_start_Decal2 ("Decal 2--{reference_property:_DecalEnabled2}", Float) = 0
		[ThryToggle(GEOM_TYPE_FROND)] [HideInInspector] _DecalEnabled2 ("Enable", Float) = 0
		_DecalColor2 ("Color", Vector) = (1,1,1,1)
		_DecalEmissionStrength2 ("Emission Strength", Range(0, 20)) = 0
		_DecalTexture2 ("Decal--{reference_properties:[_DecalTexture2Pan, _DecalTexture2UV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DecalTexture2Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DecalTexture2UV ("UV", Float) = 0
		[ToggleUI] _DecalTiled2 ("Tiled?", Float) = 0
		[Vector2] _DecalScale2 ("Scale", Vector) = (1,1,0,0)
		[Vector2] _DecalPosition2 ("Position", Vector) = (0.5,0.5,0,0)
		_DecalRotation2 ("Rotation", Range(0, 360)) = 0
		_DecalRotationSpeed2 ("Rotation Speed", Float) = 0
		[ThryWideEnum(Replace, 0, Darken, 1, Multiply, 2, Color Burn, 3, Linear Burn, 4, Lighten, 5, Screen, 6, Color Dodge, 7, Linear Dodge (Add), 8, Overlay, 9, Soft Lighten, 10, Hard Light, 11, Vivid Light, 12, Linear Light, 13, Pin Light, 14, Hard Mix, 15, Difference, 16, Exclusion, 17, Subtract, 18, Divide, 19)] _DecalBlendType2 ("Blending", Range(0, 1)) = 0
		_DecalBlendAlpha2 ("Alpha", Range(0, 1)) = 1
		[ToggleUI] _DecalHueShiftEnabled2 ("Hue Shift Enabled", Float) = 0
		_DecalHueShiftSpeed2 ("Shift Speed", Float) = 0
		_DecalHueShift2 ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_Decal2 ("Decal 0", Float) = 0
		[HideInInspector] m_start_Decal3 ("Decal 3--{reference_property:_DecalEnabled3}", Float) = 0
		[ThryToggle(DEPTH_OF_FIELD_COC_VIEW)] [HideInInspector] _DecalEnabled3 ("Enable", Float) = 0
		_DecalColor3 ("Color", Vector) = (1,1,1,1)
		_DecalEmissionStrength3 ("Emission Strength", Range(0, 20)) = 0
		_DecalTexture3 ("Decal--{reference_properties:[_DecalTexture3Pan, _DecalTexture3UV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DecalTexture3Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DecalTexture3UV ("UV", Float) = 0
		[ToggleUI] _DecalTiled3 ("Tiled?", Float) = 0
		[Vector2] _DecalScale3 ("Scale", Vector) = (1,1,0,0)
		[Vector2] _DecalPosition3 ("Position", Vector) = (0.5,0.5,0,0)
		_DecalRotation3 ("Rotation", Range(0, 360)) = 0
		_DecalRotationSpeed3 ("Rotation Speed", Float) = 0
		[ThryWideEnum(Replace, 0, Darken, 1, Multiply, 2, Color Burn, 3, Linear Burn, 4, Lighten, 5, Screen, 6, Color Dodge, 7, Linear Dodge (Add), 8, Overlay, 9, Soft Lighten, 10, Hard Light, 11, Vivid Light, 12, Linear Light, 13, Pin Light, 14, Hard Mix, 15, Difference, 16, Exclusion, 17, Subtract, 18, Divide, 19)] _DecalBlendType3 ("Blending", Range(0, 1)) = 0
		_DecalBlendAlpha3 ("Alpha", Range(0, 1)) = 1
		[ToggleUI] _DecalHueShiftEnabled3 ("Hue Shift Enabled", Float) = 0
		_DecalHueShiftSpeed3 ("Shift Speed", Float) = 0
		_DecalHueShift3 ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_Decal3 ("Decal 0", Float) = 0
		[HideInInspector] m_end_DecalSection ("Decal", Float) = 0
		[HideInInspector] m_start_backFace ("Back Face", Float) = 0
		[ToggleUI] _BackFaceEnabled ("Enable Back Face Options", Float) = 0
		_BackFaceColor ("Color", Vector) = (1,1,1,1)
		_BackFaceTexture ("Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _BackFacePanning ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _BackFaceTextureUV ("UV#", Float) = 0
		_BackFaceDetailIntensity ("Detail Intensity", Range(0, 5)) = 1
		_BackFaceHueShift ("Hue Shift", Range(0, 1)) = 0
		_BackFaceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[HideInInspector] m_end_backFace ("Back Face", Float) = 0
		[HideInInspector] m_lightingOptions ("Lighting", Float) = 0
		[HideInInspector] m_start_Lighting ("Light and Shadow", Float) = 0
		[ThryToggle(VIGNETTE_MASKED)] _EnableLighting ("Enable Lighting", Float) = 1
		[Enum(Toon, 0, Realistic, 1)] _LightingMode ("Lighting Type", Float) = 0
		_LightingStandardSmoothness ("Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==1}}", Range(0, 1)) = 0
		[ToggleUI] _LightingShadingEnabled ("Enable Shading--{condition_show:{type:PROPERTY_BOOL,data:_LightingMode==0}}", Float) = 0
		[Enum(Ramp Texture, 0, Math Gradient, 1, Shade Mapping, 2)] _LightingRampType ("Ramp Type--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
		_1st_ShadeColor ("1st ShadeColor--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Vector) = (1,1,1,1)
		_1st_ShadeMap ("1st ShadeMap--{reference_properties:[_1st_ShadeMapPan, _1st_ShadeMapUV, _Use_1stShadeMapAlpha_As_ShadowMask, _1stShadeMapMask_Inverse],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", 2D) = "white" {}
		[Vector2] [HideInInspector] _1st_ShadeMapPan ("Panning--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _1st_ShadeMapUV ("UV--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] [HideInInspector] _Use_1stShadeMapAlpha_As_ShadowMask ("1st ShadeMap.a As ShadowMask--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] [HideInInspector] _1stShadeMapMask_Inverse ("1st ShadeMapMask Inverse--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] _Use_BaseAs1st ("Use BaseMap as 1st ShadeMap--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		_2nd_ShadeColor ("2nd ShadeColor--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Vector) = (1,1,1,1)
		_2nd_ShadeMap ("2nd ShadeMap--{reference_properties:[_2nd_ShadeMapPan, _2nd_ShadeMapUV, _Use_2ndShadeMapAlpha_As_ShadowMask, _2ndShadeMapMask_Inverse],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", 2D) = "white" {}
		[Vector2] [HideInInspector] _2nd_ShadeMapPan ("Panning--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _2nd_ShadeMapUV ("UV--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] [HideInInspector] _Use_2ndShadeMapAlpha_As_ShadowMask ("2nd ShadeMap.a As ShadowMask--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] [HideInInspector] _2ndShadeMapMask_Inverse ("2nd ShadeMapMask Inverse--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		[ToggleUI] _Use_1stAs2nd ("Use 1st ShadeMap as 2nd_ShadeMap--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Float) = 0
		_BaseColor_Step ("BaseColor_Step--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Range(0.01, 1)) = 0.5
		_BaseShade_Feather ("Base/Shade_Feather--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Range(0.0001, 1)) = 0.0001
		_ShadeColor_Step ("ShadeColor_Step--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Range(0.01, 1)) = 0
		_1st2nd_Shades_Feather ("1st/2nd_Shades_Feather--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==2}}}}", Range(0.0001, 1)) = 0.0001
		[Gradient] _ToonRamp ("Lighting Ramp--{texture:{width:512,height:4,filterMode:Bilinear,wrapMode:Clamp},force_texture_options:true,condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", 2D) = "white" {}
		_LightingShadowMask ("Shading Mask--{reference_properties:[_LightingShadowMaskPan, _LightingShadowMaskUV],condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", 2D) = "white" {}
		[Vector2] [HideInInspector] _LightingShadowMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _LightingShadowMaskUV ("UV", Float) = 0
		_ShadowOffset ("Ramp Offset--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==0}}}}", Range(-1, 1)) = 0
		_LightingGradientStart ("Gradient Start--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0
		_LightingGradientEnd ("Gradient End--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Range(0, 1)) = 0.5
		_LightingShadowColor ("Shadow Tint--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType==1}}}}", Vector) = (1,1,1,1)
		_ShadowStrength ("Shadow Strength--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType!=2}}}}", Range(0, 1)) = 1
		_AttenuationMultiplier ("Unity Shadows--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_LightingMode==1},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Range(0, 1)) = 0
		[ToggleUI] _LightingIgnoreAmbientColor ("Ignore Ambient Color--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1},condition2:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingRampType!=2}}}}", Float) = 0
		[HideInInspector] m_start_lightingModifiers ("Lighting Modifiers", Float) = 0
		[Enum(Poi Custom, 0, Correct, 1)] _LightingDirectColorMode ("Direct Light Color", Float) = 0
		[ToggleUI] _LightingIndirectColorMode ("Indirect Uses Normals", Float) = 0
		[ToggleUI] _LightingUncapped ("Uncapped Lighting", Float) = 0
		[ToggleUI] _LightingOnlyUnityShadows ("Only Unity Shadows", Float) = 0
		_LightingMonochromatic ("Monochromatic Lighting?", Range(0, 1)) = 0
		_LightingMinLightBrightness ("Min Brightness", Range(0, 1)) = 0
		_LightingMinShadowBrightnessRatio ("Shadow:Light min Ratio", Range(0, 1)) = 0
		[HideInInspector] m_end_lightingModifiers ("Lighting Modifiers", Float) = 0
		[HideInInspector] m_start_detailShadows ("Detail Shadows--{reference_property:_LightingDetailShadowsEnabled}", Float) = 0
		[ToggleUI] [HideInInspector] _LightingDetailShadowsEnabled ("Enabled Detail Shadows?", Float) = 0
		_LightingDetailShadows ("Detail Shadows--{reference_properties:[_LightingDetailShadowsPan, _LightingDetailShadowsUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _LightingDetailShadowsPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _LightingDetailShadowsUV ("UV", Float) = 0
		_LightingDetailStrength ("Detail Strength", Range(0, 1)) = 1
		[HideInInspector] m_end_detailShadows ("Detail Shadows", Float) = 0
		[HideInInspector] m_start_ambientOcclusion ("Ambient Occlusion--{reference_property:_LightingEnableAO}", Float) = 0
		[ToggleUI] [HideInInspector] _LightingEnableAO ("Enable AO", Float) = 0
		_LightingAOTex ("AO Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _LightingAOTexPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _LightingAOTexUV ("UV", Float) = 0
		_AOStrength ("AO Strength", Range(0, 1)) = 1
		[HideInInspector] m_end_ambientOcclusion ("Ambient Occlusion", Float) = 0
		[HideInInspector] m_start_lightingHSL ("HSL Lighting--{reference_property:_LightingEnableHSL, condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_LightingMode==0},condition2:{type:PROPERTY_BOOL,data:_LightingShadingEnabled==1}}}", Float) = 0
		[ToggleUI] [HideInInspector] _LightingEnableHSL ("Enabled HSL Lighting", Float) = 0
		_LightingHSLIntensity ("Shadow HSL Intensity", Range(0, 1)) = 1
		_LightingShadowHue ("Shadow Hue Change", Range(0, 1)) = 0.5
		_LightingShadowSaturation ("Shadow Saturation Change", Range(0, 1)) = 0.5
		_LightingShadowLightness ("Shadow Lightness Change", Range(0, 1)) = 0.5
		[HideInInspector] m_end_lightingHSL ("HSL Lighting", Float) = 0
		[HideInInspector] m_start_lightingAdvanced ("Additive Lighting (Point/Spot)--{reference_property:_commentIfZero_LightingAdditiveEnable,button_right:{text:Tutorial,action:{type:URL,data:https://www.youtube.com/watch?v=at3p5yRRVU0&list=PL4_Gy3VRJSmbXfQSldzUiChgABQsoBlLw&index=12},hover:YouTube}}", Float) = 0
		[ToggleUI] [HideInInspector] _commentIfZero_LightingAdditiveEnable ("Enable Additive", Float) = 1
		[Enum(Realistic, 0, Toon, 1)] _LightingAdditiveType ("Lighting Type", Float) = 1
		_LightingAdditiveGradientStart ("Gradient Start", Range(0, 1)) = 0
		_LightingAdditiveGradientEnd ("Gradient End", Range(0, 1)) = 0.5
		_LightingAdditivePassthrough ("Point Light Passthrough", Range(0, 1)) = 0.5
		_LightingAdditiveDetailStrength ("Detail Shadow Strength", Range(0, 1)) = 1
		[ToggleUI] _LightingAdditiveLimitIntensity ("Limit Intensity", Float) = 0
		_LightingAdditiveMaxIntensity ("Max Intensity--{condition_show:{type:PROPERTY_BOOL,data:_LightingAdditiveLimitIntensity==1}}", Range(0, 3)) = 1
		[ThryToggle(_SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A)] _DisableDirectionalInAdd ("No Directional", Float) = 1
		[HideInInspector] m_end_lightingAdvanced ("Additive Lighting", Float) = 0
		[HideInInspector] m_end_Lighting ("Light and Shadow", Float) = 0
		[HideInInspector] m_start_subsurface ("Subsurface Scattering", Float) = 0
		[ThryToggle(_TERRAIN_NORMAL_MAP)] _EnableSSS ("Enable Subsurface Scattering", Float) = 0
		_SSSColor ("Subsurface Color", Vector) = (1,0,0,1)
		_SSSThicknessMap ("Thickness Map", 2D) = "black" {}
		[Vector2] [HideInInspector] _SSSThicknessMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SSSThicknessMapUV ("UV", Float) = 0
		_SSSThicknessMod ("Thickness mod", Range(-1, 1)) = 0
		_SSSSCale ("Light Strength", Range(0, 1)) = 0.25
		_SSSPower ("Light Spread", Range(1, 100)) = 5
		_SSSDistortion ("Light Distortion", Range(0, 1)) = 1
		[HideInInspector] m_end_subsurface ("Subsurface Scattering", Float) = 0
		[HideInInspector] m_start_rimLightOptions ("Rim Lighting", Float) = 0
		[ThryToggle(_GLOSSYREFLECTIONS_OFF)] _EnableRimLighting ("Enable Rim Lighting", Float) = 0
		[Enum(vertex, 0, pixel, 1)] _RimLightNormal ("Normal Select", Float) = 1
		[ToggleUI] _RimLightingInvert ("Invert Rim Lighting", Float) = 0
		_RimLightColor ("Rim Color", Vector) = (1,1,1,1)
		_RimWidth ("Rim Width", Range(0, 1)) = 0.8
		_RimSharpness ("Rim Sharpness", Range(0, 1)) = 0.25
		_RimStrength ("Rim Emission", Range(0, 20)) = 0
		_RimBrighten ("Rim Color Brighten", Range(0, 3)) = 0
		_RimLightColorBias ("Rim Color Bias", Range(0, 1)) = 1
		_RimTex ("Rim Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _RimTexPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RimTexUV ("UV", Float) = 0
		_RimMask ("Rim Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _RimMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RimMaskUV ("UV", Float) = 0
		[HideInInspector] m_start_rimHueShift ("Hue Shift", Float) = 0
		[ToggleUI] _RimHueShiftEnabled ("Enabled", Float) = 0
		_RimHueShiftSpeed ("Shift Speed", Float) = 0
		_RimHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_rimHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_start_rimWidthNoise ("Width Noise", Float) = 0
		_RimWidthNoiseTexture ("Rim Width Noise", 2D) = "black" {}
		[Vector2] [HideInInspector] _RimWidthNoiseTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RimWidthNoiseTextureUV ("UV", Float) = 0
		_RimWidthNoiseStrength ("Intensity", Range(0, 1)) = 0.1
		[HideInInspector] m_end_rimWidthNoise ("Width Noise", Float) = 0
		[HideInInspector] m_start_ShadowMix ("Shadow Mix", Float) = 0
		_ShadowMix ("Shadow Mix In", Range(0, 1)) = 0
		_ShadowMixThreshold ("Shadow Mix Threshold", Range(0, 1)) = 0.5
		_ShadowMixWidthMod ("Shadow Mix Width Mod", Range(0, 10)) = 0.5
		[HideInInspector] m_end_ShadowMix ("Shadow Mix", Float) = 0
		[HideInInspector] m_end_rimLightOptions ("Rim Lighting", Float) = 0
		[HideInInspector] m_start_reflectionRim ("Environmental Rim", Float) = 0
		[ThryToggle(_MAPPING_6_FRAMES_LAYOUT)] _EnableEnvironmentalRim ("Enable Environmental Rim", Float) = 0
		_RimEnviroMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _RimEnviroMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _RimEnviroMaskUV ("UV", Float) = 0
		_RimEnviroBlur ("Blur", Range(0, 1)) = 0.7
		_RimEnviroWidth ("Rim Width", Range(0, 1)) = 0.45
		_RimEnviroSharpness ("Rim Sharpness", Range(0, 1)) = 0
		_RimEnviroMinBrightness ("Min Brightness Threshold", Range(0, 2)) = 0
		_RimEnviroIntensity ("Intensity", Range(0, 1)) = 1
		[HideInInspector] m_end_reflectionRim ("Environmental Rim", Float) = 0
		[HideInInspector] m_start_bakedLighting ("Baked Lighting", Float) = 0
		_GIEmissionMultiplier ("GI Emission Multiplier", Float) = 1
		[HideInInspector] DSGI ("DSGI", Float) = 0
		[HideInInspector] LightmapFlags ("Lightmap Flags", Float) = 0
		[HideInInspector] m_end_bakedLighting ("Baked Lighting", Float) = 0
		[Helpbox(3)] _LockTooltip ("ALWAYS LOCK IN BEFORE UPLOADING. || RIGHT CLICK A PROPERTY IF YOU WANT TO ANIMATE IT.", Float) = 0
		[HideInInspector] m_start_brdf ("Metallics & Specular--{reference_property:_EnableBRDF}", Float) = 0
		[ThryToggle(VIGNETTE_CLASSIC)] [HideInInspector] _EnableBRDF ("Enable", Float) = 0
		_BRDFMetallicGlossMap ("Metallic Gloss Map--{reference_properties:[_BRDFMetallicGlossMapPan, _BRDFMetallicGlossMapUV, _BRDFInvertGlossiness, _BRDFMetallicGlossMapToolTip]}", 2D) = "white" {}
		[Helpbox(1)] [HideInInspector] _BRDFMetallicGlossMapToolTip ("R = Metallic, G = Reflectance, A = Glossiness/Smoothness/Inverse Roughness", Float) = 0
		[ToggleUI] [HideInInspector] _BRDFInvertGlossiness ("Invert Glossiness", Float) = 0
		[Vector2] [HideInInspector] _BRDFMetallicGlossMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _BRDFMetallicGlossMapUV ("UV", Float) = 0
		_BRDFSpecularMap ("Specular Tint/Mask--{reference_properties:[_BRDFSpecularMapPan, _BRDFSpecularMapUV, _BRDFSpecularMapToolTip]}", 2D) = "white" {}
		[Helpbox(1)] [HideInInspector] _BRDFSpecularMapToolTip ("RGB = Color, A = Mask", Float) = 0
		[Vector2] [HideInInspector] _BRDFSpecularMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _BRDFSpecularMapUV ("UV", Float) = 0
		_BRDFMetallicMap ("Metallic Tint/Mask--{reference_properties:[_BRDFMetallicMapPan, _BRDFMetallicMapUV, _BRDFMetallicMapToolTip]}", 2D) = "white" {}
		[Helpbox(1)] [HideInInspector] _BRDFMetallicMapToolTip ("RGB = Color, A = Mask", Float) = 0
		[Vector2] [HideInInspector] _BRDFMetallicMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _BRDFMetallicMapUV ("UV", Float) = 0
		_BRDFMetallic ("Metallic", Range(0, 1)) = 0
		_BRDFGlossiness ("Glossiness", Range(0, 1)) = 0
		_BRDFReflectance ("Reflectance", Range(0, 1)) = 0.5
		_BRDFAnisotropy ("Anisotropy", Range(-1, 1)) = 0
		[ToggleUI] _BRDFReflectionsEnabled ("Enable Reflections", Float) = 1
		[ToggleUI] _BRDFSpecularEnabled ("Enable Specular", Float) = 1
		_BRDFFallback ("Fallback Reflection", Cube) = "" {}
		[ToggleUI] _BRDFForceFallback ("Force Fallback Reflection", Range(0, 1)) = 0
		[HideInInspector] m_end_brdf ("Baked Lighting", Float) = 0
		[HideInInspector] m_start_Metallic ("Metallicsa", Float) = 0
		[ThryToggle(_METALLICGLOSSMAP)] _EnableMetallic ("Enable Metallics", Float) = 0
		_CubeMap ("Baked CubeMap", Cube) = "" {}
		[ToggleUI] _SampleWorld ("Force Baked Cubemap", Range(0, 1)) = 0
		_MetalReflectionTint ("Reflection Tint", Vector) = (1,1,1,1)
		_MetallicTintMap ("Tint Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _MetallicTintMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MetallicTintMapUV ("UV", Float) = 0
		_MetallicMask ("Metallic Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _MetallicMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MetallicMaskUV ("UV", Float) = 0
		_Metallic ("Metallic", Range(0, 1)) = 0
		_SmoothnessMask ("Smoothness Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _SmoothnessMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SmoothnessMaskUV ("UV", Float) = 0
		[ToggleUI] _InvertSmoothness ("Invert Smoothness Map", Range(0, 1)) = 0
		_Smoothness ("Smoothness", Range(0, 1)) = 0
		[HideInInspector] m_end_Metallic ("Metallics", Float) = 0
		[HideInInspector] m_start_clearCoat ("Clear Coat", Float) = 0
		[ThryToggle(_COLORCOLOR_ON)] _EnableClearCoat ("Enable Clear Coat", Float) = 0
		_ClearcoatMap ("Clear Coat Map--{reference_properties:[_ClearcoatMapPan, _ClearcoatMapUV, _ClearcoatInvertSmoothness, _ClearcoatHelpBox]}", 2D) = "white" {}
		[Helpbox(1)] [HideInInspector] _ClearcoatHelpBox ("R = Clear Coat Map, G = Specular Mask, B = Reflection Mask, A = Glossiness/Smoothness/Inverse Roughness", Float) = 0
		[Vector2] [HideInInspector] _ClearcoatMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _ClearcoatMapUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _ClearcoatInvertSmoothness ("Invert Smoothness", Range(0, 1)) = 0
		_Clearcoat ("Clear Coat", Range(0, 1)) = 1
		_ClearcoatGlossiness ("Smoothness", Range(0, 1)) = 0
		_ClearcoatAnisotropy ("Anisotropy", Range(-1, 1)) = 0
		[ToggleUI] _ClearcoatEnableReflections ("Enable Reflections", Range(0, 1)) = 1
		[ToggleUI] _ClearcoatEnableSpecular ("Enable Specular", Range(0, 1)) = 1
		_ClearcoatFallback ("Fallback CubeMap", Cube) = "" {}
		[ToggleUI] _ClearcoatForceFallback ("Force Fallback Cubemap", Range(0, 1)) = 0
		[HideInInspector] m_end_clearCoat ("Clear Coat", Float) = 0
		[HideInInspector] m_start_matcap ("Matcap / Sphere Textures", Float) = 0
		[ThryToggle(_COLORADDSUBDIFF_ON)] _MatcapEnable ("Enable Matcap", Float) = 0
		_MatcapColor ("Color", Vector) = (1,1,1,1)
		[TextureNoSO] _Matcap ("Matcap", 2D) = "white" {}
		_MatcapBorder ("Border", Range(0, 0.5)) = 0.43
		_MatcapMask ("Mask--{reference_properties:[_MatcapMaskPan, _MatcapMaskUV, _MatcapMaskInvert]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _MatcapMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MatcapMaskUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _MatcapMaskInvert ("Invert", Float) = 0
		_MatcapEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		_MatcapIntensity ("Intensity", Range(0, 5)) = 1
		_MatcapLightMask ("Hide in Shadow", Range(0, 1)) = 0
		_MatcapReplace ("Replace With Matcap", Range(0, 1)) = 1
		_MatcapMultiply ("Multiply Matcap", Range(0, 1)) = 0
		_MatcapAdd ("Add Matcap", Range(0, 1)) = 0
		[Enum(Vertex, 0, Pixel, 1)] _MatcapNormal ("Normal to use", Float) = 1
		[HideInInspector] m_start_matcapHueShift ("Hue Shift", Float) = 0
		[ToggleUI] _MatcapHueShiftEnabled ("Enabled", Float) = 0
		_MatcapHueShiftSpeed ("Shift Speed", Float) = 0
		_MatcapHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_matcapHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_end_matcap ("Matcap", Float) = 0
		[HideInInspector] m_start_Matcap2 ("Matcap 2", Float) = 0
		[ThryToggle(COLOR_GRADING_HDR_3D)] _Matcap2Enable ("Enable Matcap 2", Float) = 0
		_Matcap2Color ("Color", Vector) = (1,1,1,1)
		[TextureNoSO] _Matcap2 ("Matcap", 2D) = "white" {}
		_Matcap2Border ("Border", Range(0, 0.5)) = 0.43
		_Matcap2Mask ("Mask--{reference_properties:[_Matcap2MaskPan, _Matcap2MaskUV, _Matcap2MaskInvert]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _Matcap2MaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _Matcap2MaskUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _Matcap2MaskInvert ("Invert", Float) = 0
		_Matcap2EmissionStrength ("Emission Strength", Range(0, 20)) = 0
		_Matcap2Intensity ("Intensity", Range(0, 5)) = 1
		_Matcap2LightMask ("Hide in Shadow", Range(0, 1)) = 0
		_Matcap2Replace ("Replace With Matcap", Range(0, 1)) = 0
		_Matcap2Multiply ("Multiply Matcap", Range(0, 1)) = 0
		_Matcap2Add ("Add Matcap", Range(0, 1)) = 0
		[Enum(Vertex, 0, Pixel, 1)] _Matcap2Normal ("Normal to use", Float) = 1
		[HideInInspector] m_start_matcap2HueShift ("Hue Shift", Float) = 0
		[ToggleUI] _Matcap2HueShiftEnabled ("Enabled", Float) = 0
		_Matcap2HueShiftSpeed ("Shift Speed", Float) = 0
		_Matcap2HueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_matcap2HueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_end_Matcap2 ("Matcap 2", Float) = 0
		[HideInInspector] m_start_specular ("Specular Reflections", Float) = 0
		[ThryToggle(_SPECGLOSSMAP)] _EnableSpecular ("Enable Specular", Float) = 0
		[Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType ("Specular Type", Float) = 1
		[Enum(vertex, 0, pixel, 1)] _SpecularNormal ("Normal Select", Float) = 1
		_SpecularTint ("Specular Tint", Vector) = (1,1,1,1)
		_SpecularMetallic ("Metallic", Range(0, 1)) = 0
		[Gradient] _SpecularMetallicMap ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMetallicMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMetallicMapUV ("UV", Float) = 0
		_SpecularSmoothness ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType==3}}}", Range(0, 1)) = 1
		[Gradient] _SpecularMap ("Specular Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMapUV ("UV", Float) = 0
		[ToggleUI] _SpecularInvertSmoothness ("Invert Smoothness", Float) = 0
		_SpecularMask ("Specular Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMaskUV ("UV", Float) = 0
		[Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom ("Smoothness From", Float) = 1
		[Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
		_AnisoSpec1Alpha ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
		_AnisoSpec2Alpha ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 1
		_Spec1Offset ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(-1, 1)) = 0
		_Spec2Smoothness ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==3}}", Range(0, 1)) = 0
		[ToggleUI] _AnisoUseTangentMap ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Float) = 0
		_AnisoTangentMap ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMapPan, _AnisoTangentMapUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "bump" {}
		[Vector2] [HideInInspector] _AnisoTangentMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _AnisoTangentMapUV ("UV", Float) = 0
		_SpecularToonStart ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 1)) = 0.95
		_SpecularToonEnd ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Range(0, 2)) = 1
		[ToggleUI] _SpecularAnisoJitterMirrored ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==4}}", Float) = 0
		[Curve] _SpecularAnisoJitterMicro ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicroPan, _SpecularAnisoJitterMicroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" {}
		_SpecularAnisoJitterMicroMultiplier ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
		[Vector2] [HideInInspector] _SpecularAnisoJitterMicroPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularAnisoJitterMicroUV ("UV", Float) = 0
		[Curve] _SpecularAnisoJitterMacro ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacroPan, _SpecularAnisoJitterMacroUV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", 2D) = "black" {}
		_SpecularAnisoJitterMacroMultiplier ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType==4}}}", Range(0, 10)) = 0
		[Vector2] [HideInInspector] _SpecularAnisoJitterMacroPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularAnisoJitterMacroUV ("UV", Float) = 0
		[MultiSlider] _SpecularToonInnerOuter ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType==2}}", Vector) = (0.25,0.3,0,1)
		[HideInInspector] m_end_specular ("Specular Reflections", Float) = 0
		[HideInInspector] m_start_specular1 ("Specular Reflections 2", Float) = 0
		[ThryToggle(DITHERING)] _EnableSpecular1 ("Enable Specular", Float) = 0
		[Enum(Realistic, 1, Toon, 2, Anisotropic, 3, Toon Aniso, 4)] _SpecularType1 ("Specular Type", Float) = 1
		[Enum(vertex, 0, pixel, 1)] _SpecularNormal1 ("Normal Select", Float) = 1
		_SpecularTint1 ("Specular Tint", Vector) = (1,1,1,1)
		_SpecularMetallic1 ("Metallic", Range(0, 1)) = 0
		[Gradient] _SpecularMetallicMap1 ("Metallic Map--{reference_properties:[_SpecularMetallicMapPan, _SpecularMetallicMapUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMetallicMap1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMetallicMap1UV ("UV", Float) = 0
		_SpecularSmoothness1 ("Smoothness--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==1},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==3}}}", Range(-2, 1)) = 0.75
		_SpecularMap1 ("Specular Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMap1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMap1UV ("UV", Float) = 0
		[ToggleUI] _SpecularInvertSmoothness1 ("Invert Smoothness", Float) = 0
		_SpecularMask1 ("Specular Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _SpecularMask1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularMask1UV ("UV", Float) = 0
		[Enum(Alpha, 0, Grayscale, 1)] _SmoothnessFrom1 ("Smoothness From", Float) = 1
		[Enum(Tangent, 0, binormal, 1)] _SpecWhatTangent1 ("(Bi)Tangent?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
		_AnisoSpec1Alpha1 ("Spec1 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
		_AnisoSpec2Alpha1 ("Spec2 Alpha--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 1
		_Spec1Offset1 ("Spec1 Offset--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(-1, 1)) = 0
		_Spec2Smoothness1 ("Spec2 Smoothness--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==3}}", Range(0, 1)) = 0
		[ToggleUI] _AnisoUseTangentMap1 ("Use Directional Map?--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Float) = 0
		_AnisoTangentMap1 ("Anisotropic Directional Map--{reference_properties:[_AnisoTangentMap1Pan, _AnisoTangentMap1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "bump" {}
		[Vector2] [HideInInspector] _AnisoTangentMap1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _AnisoTangentMap1UV ("UV", Float) = 0
		_SpecularToonStart1 ("Spec Toon Start--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 1)) = 0.95
		_SpecularToonEnd1 ("Spec Toon End--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Range(0, 2)) = 1
		[ToggleUI] _SpecularAnisoJitterMirrored1 ("Mirrored?--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==4}}", Float) = 0
		[Curve] _SpecularAnisoJitterMicro1 ("Micro Shift--{reference_properties:[_SpecularAnisoJitterMicro1Pan, _SpecularAnisoJitterMicro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" {}
		_SpecularAnisoJitterMicroMultiplier1 ("Micro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
		[Vector2] [HideInInspector] _SpecularAnisoJitterMicro1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularAnisoJitterMicro1UV ("UV", Float) = 0
		[Curve] _SpecularAnisoJitterMacro1 ("Macro Shift--{reference_properties:[_SpecularAnisoJitterMacro1Pan, _SpecularAnisoJitterMacro1UV], condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", 2D) = "black" {}
		_SpecularAnisoJitterMacroMultiplier1 ("Macro Multiplier--{condition_show:{type:OR,condition1:{type:PROPERTY_BOOL,data:_SpecularType1==3},condition2:{type:PROPERTY_BOOL,data:_SpecularType1==4}}}", Range(0, 10)) = 0
		[Vector2] [HideInInspector] _SpecularAnisoJitterMacro1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _SpecularAnisoJitterMacro1UV ("UV", Float) = 0
		[MultiSlider] _SpecularToonInnerOuter1 ("Inner/Outer Edge--{condition_show:{type:PROPERTY_BOOL,data:_SpecularType1==2}}", Vector) = (0.25,0.3,0,1)
		[HideInInspector] m_end_specular1 ("Specular Reflections", Float) = 0
		[HideInInspector] m_Special_Effects ("Special Effects", Float) = 0
		[HideInInspector] m_start_emissionOptions ("Emission / Glow", Float) = 0
		[ThryToggle(_EMISSION)] _EnableEmission ("Enable Emission", Float) = 0
		[ToggleUI] _EmissionReplace ("Replace Base Color", Float) = 0
		[HDR] _EmissionColor ("Emission Color", Vector) = (1,1,1,1)
		[Gradient] _EmissionMap ("Emission Map", 2D) = "white" {}
		[ToggleUI] _EmissionBaseColorAsMap ("Base Color as Map?", Float) = 0
		[Vector2] [HideInInspector] _EmissionMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _EmissionMapUV ("UV", Float) = 0
		_EmissionMask ("Emission Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _EmissionMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _EmissionMaskUV ("UV", Float) = 0
		_EmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[ToggleUI] _EmissionHueShiftEnabled ("Enable Hue Shift", Float) = 0
		_EmissionHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_start_CenterOutEmission ("Center Out Emission", Float) = 0
		[ToggleUI] [HideInInspector] _EmissionCenterOutEnabled ("Enable Center Out", Float) = 0
		_EmissionCenterOutSpeed ("Flow Speed", Float) = 5
		[HideInInspector] m_end_CenterOutEmission ("inward out emission", Float) = 0
		[HideInInspector] m_start_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
		[ToggleUI] [HideInInspector] _EnableGITDEmission ("Enable Glow In The Dark", Float) = 0
		[Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh ("Lighting Type", Float) = 0
		_GITDEMinEmissionMultiplier ("Min Emission Multiplier", Range(0, 1)) = 1
		_GITDEMaxEmissionMultiplier ("Max Emission Multiplier", Range(0, 1)) = 0
		_GITDEMinLight ("Min Lighting", Range(0, 1)) = 0
		_GITDEMaxLight ("Max Lighting", Range(0, 1)) = 1
		[HideInInspector] m_end_glowInDarkEmissionOptions ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
		[HideInInspector] m_start_blinkingEmissionOptions ("Blinking Emission", Float) = 0
		[ToggleUI] [HideInInspector] _EmissionBlinkingEnabled ("Enable Blinking", Float) = 0
		_EmissiveBlink_Min ("Emissive Blink Min", Float) = 0
		_EmissiveBlink_Max ("Emissive Blink Max", Float) = 1
		_EmissiveBlink_Velocity ("Emissive Blink Velocity", Float) = 4
		_EmissionBlinkingOffset ("Offset", Float) = 0
		[HideInInspector] m_end_blinkingEmissionOptions ("Blinking Emission", Float) = 0
		[HideInInspector] m_start_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
		[ToggleUI] [HideInInspector] _ScrollingEmission ("Enable Scrolling Emission", Float) = 0
		[ToggleUI] _EmissionScrollingUseCurve ("Use Curve", Float) = 0
		[Curve] _EmissionScrollingCurve ("Curve", 2D) = "white" {}
		[ToggleUI] _EmissionScrollingVertexColor ("VColor as position", Float) = 0
		_EmissiveScroll_Direction ("Direction", Vector) = (0,-10,0,0)
		_EmissiveScroll_Width ("Width", Float) = 10
		_EmissiveScroll_Velocity ("Velocity", Float) = 10
		_EmissiveScroll_Interval ("Interval", Float) = 20
		_EmissionScrollingOffset ("Offset", Float) = 0
		[HideInInspector] m_end_scrollingEmissionOptions ("Scrolling Emission", Float) = 0
		[HideInInspector] m_end_emissionOptions ("Emission / Glow", Float) = 0
		[HideInInspector] m_start_emission1Options ("Emission / Glow 2 (Requires Emission 1 Enabled)", Float) = 0
		[ThryToggle(EFFECT_HUE_VARIATION)] _EnableEmission1 ("Enable Emission 2", Float) = 0
		[HDR] _EmissionColor1 ("Emission Color", Vector) = (1,1,1,1)
		[Gradient] _EmissionMap1 ("Emission Map", 2D) = "white" {}
		[ToggleUI] _EmissionBaseColorAsMap1 ("Base Color as Map?", Float) = 0
		[Vector2] [HideInInspector] _EmissionMap1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _EmissionMap1UV ("UV", Float) = 0
		_EmissionMask1 ("Emission Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _EmissionMask1Pan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _EmissionMask1UV ("UV", Float) = 0
		_EmissionStrength1 ("Emission Strength", Range(0, 20)) = 0
		[ToggleUI] _EmissionHueShiftEnabled1 ("Enable Hue Shift", Float) = 0
		_EmissionHueShift1 ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_start_CenterOutEmission1 ("Center Out Emission", Float) = 0
		[ToggleUI] [HideInInspector] _EmissionCenterOutEnabled1 ("Enable Center Out", Float) = 0
		_EmissionCenterOutSpeed1 ("Flow Speed", Float) = 5
		[HideInInspector] m_end_CenterOutEmission1 ("inward out emission", Float) = 0
		[HideInInspector] m_start_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
		[ToggleUI] [HideInInspector] _EnableGITDEmission1 ("Enable Glow In The Dark", Float) = 0
		[Enum(World, 0, Mesh, 1)] _GITDEWorldOrMesh1 ("Lighting Type", Float) = 0
		_GITDEMinEmissionMultiplier1 ("Min Emission Multiplier", Range(0, 1)) = 1
		_GITDEMaxEmissionMultiplier1 ("Max Emission Multiplier", Range(0, 1)) = 0
		_GITDEMinLight1 ("Min Lighting", Range(0, 1)) = 0
		_GITDEMaxLight1 ("Max Lighting", Range(0, 1)) = 1
		[HideInInspector] m_end_glowInDarkEmissionOptions1 ("Glow In The Dark Emission (Requires Lighting Enabled)", Float) = 0
		[HideInInspector] m_start_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
		[ToggleUI] [HideInInspector] _EmissionBlinkingEnabled1 ("Enable Blinking", Float) = 0
		_EmissiveBlink_Min1 ("Emissive Blink Min", Float) = 0
		_EmissiveBlink_Max1 ("Emissive Blink Max", Float) = 1
		_EmissiveBlink_Velocity1 ("Emissive Blink Velocity", Float) = 4
		_EmissionBlinkingOffset1 ("Offset", Float) = 0
		[HideInInspector] m_end_blinkingEmissionOptions1 ("Blinking Emission", Float) = 0
		[HideInInspector] m_start_scrollingEmissionOptions1 ("Scrolling Emission", Float) = 0
		[ToggleUI] [HideInInspector] _ScrollingEmission1 ("Enable Scrolling Emission", Float) = 0
		[ToggleUI] _EmissionScrollingUseCurve1 ("Use Curve", Float) = 0
		[Curve] _EmissionScrollingCurve1 ("Curve", 2D) = "white" {}
		[ToggleUI] _EmissionScrollingVertexColor1 ("VColor as position", Float) = 0
		_EmissiveScroll_Direction1 ("Direction", Vector) = (0,-10,0,0)
		_EmissiveScroll_Width1 ("Width", Float) = 10
		_EmissiveScroll_Velocity1 ("Velocity", Float) = 10
		_EmissiveScroll_Interval1 ("Interval", Float) = 20
		_EmissionScrollingOffset1 ("Offset", Float) = 0
		[HideInInspector] m_end_scrollingEmission1Options ("Scrolling Emission", Float) = 0
		[HideInInspector] m_end_emission1Options ("Emission / Glow 2", Float) = 0
		[HideInInspector] m_start_flipBook ("Flipbook", Float) = 0
		[ThryToggle(_SUNDISK_HIGH_QUALITY)] _EnableFlipbook ("Enable Flipbook", Float) = 0
		[ToggleUI] _FlipbookAlphaControlsFinalAlpha ("Flipbook Controls Alpha?", Float) = 0
		[ToggleUI] _FlipbookIntensityControlsAlpha ("Intensity Controls Alpha?", Float) = 0
		[ToggleUI] _FlipbookColorReplaces ("Color Replaces Flipbook", Float) = 0
		[TextureArray] _FlipbookTexArray ("Texture Array", 2DArray) = "" {}
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _FlipbookTexArrayUV ("UV", Float) = 0
		[Vector2] [HideInInspector] _FlipbookTexArrayPan ("Panning", Vector) = (0,0,0,0)
		_FlipbookMask ("Mask", 2D) = "white" {}
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _FlipbookMaskUV ("UV", Float) = 0
		[Vector2] [HideInInspector] _FlipbookMaskPan ("Panning", Vector) = (0,0,0,0)
		_FlipbookColor ("Color & alpha", Vector) = (1,1,1,1)
		_FlipbookTotalFrames ("Total Frames", Float) = 1
		_FlipbookFPS ("FPS", Float) = 30
		_FlipbookScaleOffset ("Scale | Offset", Vector) = (1,1,0,0)
		[ToggleUI] _FlipbookTiled ("Tiled?", Float) = 0
		_FlipbookEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		_FlipbookRotation ("Rotation", Range(0, 360)) = 0
		_FlipbookRotationSpeed ("Rotation Speed", Float) = 0
		_FlipbookReplace ("Replace", Range(0, 1)) = 1
		_FlipbookMultiply ("Multiply", Range(0, 1)) = 0
		_FlipbookAdd ("Add", Range(0, 1)) = 0
		[HideInInspector] m_start_manualFlipbookControl ("Manual Control", Float) = 0
		_FlipbookCurrentFrame ("Current Frame", Float) = -1
		[HideInInspector] m_end_manualFlipbookControl ("Manual Control", Float) = 0
		[HideInInspector] m_start_crossfade ("Crossfade", Float) = 0
		[ToggleUI] _FlipbookCrossfadeEnabled ("Enable Crossfade?", Float) = 0
		[MultiSlider] _FlipbookCrossfadeRange ("Fade Range", Vector) = (0.75,1,0,1)
		[HideInInspector] m_end_crossfade ("Crossfade", Float) = 0
		[HideInInspector] m_start_flipbookHueShift ("Hue Shift", Float) = 0
		[ToggleUI] _FlipbookHueShiftEnabled ("Enabled", Float) = 0
		_FlipbookHueShiftSpeed ("Shift Speed", Float) = 0
		_FlipbookHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_flipbookHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_end_flipBook ("Flipbook", Float) = 0
		[HideInInspector] m_start_dissolve ("Dissolve", Float) = 0
		[ThryToggle(DISTORT)] _EnableDissolve ("Enable Dissolve", Float) = 0
		[Enum(Basic, 1, Point2Point, 2)] _DissolveType ("Dissolve Type", Float) = 1
		_DissolveEdgeWidth ("Edge Width", Range(0, 0.5)) = 0.025
		_DissolveEdgeHardness ("Edge Hardness", Range(0, 1)) = 0.5
		_DissolveEdgeColor ("Edge Color", Vector) = (1,1,1,1)
		[Gradient] _DissolveEdgeGradient ("Edge Gradient", 2D) = "white" {}
		_DissolveEdgeEmission ("Edge Emission", Range(0, 20)) = 0
		_DissolveTextureColor ("Dissolved Color", Vector) = (1,1,1,1)
		_DissolveToTexture ("Dissolved Texture", 2D) = "white" {}
		[Vector2] [HideInInspector] _DissolveToTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DissolveToTextureUV ("UV", Float) = 0
		_DissolveToEmissionStrength ("Dissolved Emission Strength", Range(0, 20)) = 0
		_DissolveNoiseTexture ("Dissolve Noise", 2D) = "white" {}
		[Vector2] [HideInInspector] _DissolveNoiseTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DissolveNoiseTextureUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _DissolveInvertNoise ("Invert?", Float) = 0
		_DissolveDetailNoise ("Dissolve Detail Noise", 2D) = "black" {}
		[Vector2] [HideInInspector] _DissolveDetailNoisePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DissolveDetailNoiseUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _DissolveInvertDetailNoise ("Invert?", Float) = 0
		_DissolveDetailStrength ("Dissolve Detail Strength", Range(0, 1)) = 0.1
		_DissolveAlpha ("Dissolve Alpha", Range(0, 1)) = 0
		_DissolveMask ("Dissolve Mask", 2D) = "white" {}
		[ToggleUI] _DissolveUseVertexColors ("VertexColor.g Mask", Float) = 0
		[Vector2] [HideInInspector] _DissolveMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DissolveMaskUV ("UV", Float) = 0
		[ToggleUI] [HideInInspector] _DissolveMaskInvert ("Invert?", Float) = 0
		_ContinuousDissolve ("Continuous Dissolve Speed", Float) = 0
		[HideInInspector] m_start_dissolveMasking ("Effect Masking", Float) = 0
		[Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmissionSide ("Emission 1", Float) = 2
		[Enum(Undissolved, 0, Dissolved, 1, Both, 2)] _DissolveEmission1Side ("Emission 2", Float) = 2
		[HideInInspector] m_end_dissolveMasking ("Effect Masking", Float) = 0
		[HideInInspector] m_start_pointToPoint ("point to point", Float) = 0
		[Enum(Local, 0, World, 1, Vertex Colors, 2)] _DissolveP2PWorldLocal ("World/Local", Float) = 0
		_DissolveP2PEdgeLength ("Edge Length", Float) = 0.1
		[Vector3] _DissolveStartPoint ("Start Point", Vector) = (0,-1,0,0)
		[Vector3] _DissolveEndPoint ("End Point", Vector) = (0,1,0,0)
		[HideInInspector] m_end_pointToPoint ("Point To Point", Float) = 0
		[HideInInspector] m_start_dissolveHueShift ("Hue Shift", Float) = 0
		[ToggleUI] _DissolveHueShiftEnabled ("Dissolved Enabled", Float) = 0
		_DissolveHueShiftSpeed ("Dissolved Speed", Float) = 0
		_DissolveHueShift ("Dissolved Shift", Range(0, 1)) = 0
		[ToggleUI] _DissolveEdgeHueShiftEnabled ("Edge Enabled", Float) = 0
		_DissolveEdgeHueShiftSpeed ("Edge Speed", Float) = 0
		_DissolveEdgeHueShift ("Edge Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_dissolveHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_start_BonusSliders ("Locked In Anim Sliders", Float) = 0
		_DissolveAlpha0 ("Dissolve Alpha 0", Range(-1, 1)) = 0
		_DissolveAlpha1 ("Dissolve Alpha 1", Range(-1, 1)) = 0
		_DissolveAlpha2 ("Dissolve Alpha 2", Range(-1, 1)) = 0
		_DissolveAlpha3 ("Dissolve Alpha 3", Range(-1, 1)) = 0
		_DissolveAlpha4 ("Dissolve Alpha 4", Range(-1, 1)) = 0
		_DissolveAlpha5 ("Dissolve Alpha 5", Range(-1, 1)) = 0
		_DissolveAlpha6 ("Dissolve Alpha 6", Range(-1, 1)) = 0
		_DissolveAlpha7 ("Dissolve Alpha 7", Range(-1, 1)) = 0
		_DissolveAlpha8 ("Dissolve Alpha 8", Range(-1, 1)) = 0
		_DissolveAlpha9 ("Dissolve Alpha 9", Range(-1, 1)) = 0
		[HideInInspector] m_end_BonusSliders ("Locked In Sliders", Float) = 0
		[HideInInspector] m_end_dissolve ("Dissolve", Float) = 0
		[HideInInspector] m_start_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
		[ThryToggle(_DETAIL_MULX2)] _PanoToggle ("Enable Panosphere", Float) = 0
		[ToggleUI] _PanoInfiniteStereoToggle ("Infinite Stereo", Float) = 0
		_PanosphereColor ("Color", Vector) = (1,1,1,1)
		_PanosphereTexture ("Texture", 2D) = "white" {}
		_PanoMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _PanoMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _PanoMaskUV ("UV", Float) = 0
		_PanoEmission ("Emission Strength", Range(0, 10)) = 0
		_PanoBlend ("Alpha", Range(0, 1)) = 0
		[Vector3] _PanospherePan ("Pan Speed", Vector) = (0,0,0,0)
		[ToggleUI] _PanoCubeMapToggle ("Use Cubemap", Float) = 0
		[TextureNoSO] _PanoCubeMap ("CubeMap", Cube) = "" {}
		[HideInInspector] m_end_panosphereOptions ("Panosphere / Cubemaps", Float) = 0
		[HideInInspector] m_start_glitter ("Glitter / Sparkle", Float) = 0
		[ThryToggle(_SUNDISK_SIMPLE)] _GlitterEnable ("Enable Glitter?", Float) = 0
		[Enum(Angle, 0, Linear Emission, 1)] _GlitterMode ("Mode", Float) = 0
		[Enum(Circle, 0, Square, 1)] _GlitterShape ("Shape", Float) = 0
		[Enum(Add, 0, Replace, 1)] _GlitterBlendType ("Blend Mode", Float) = 0
		[HDR] _GlitterColor ("Color", Vector) = (1,1,1,1)
		_GlitterUseSurfaceColor ("Use Surface Color", Range(0, 1)) = 0
		_GlitterColorMap ("Glitter Color Map", 2D) = "white" {}
		[Vector2] [HideInInspector] _GlitterColorMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _GlitterColorMapUV ("UV", Float) = 0
		[Vector2] [HideInInspector] _GlitterPan ("Panning", Vector) = (0,0,0,0)
		_GlitterMask ("Glitter Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _GlitterMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _GlitterMaskUV ("UV", Float) = 0
		_GlitterTexture ("Glitter Texture--{reference_properties:[_GlitterTexturePan]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _GlitterTexturePan ("Panning", Vector) = (0,0,0,0)
		_GlitterTextureRotation ("Rotation Speed", Float) = 0
		_GlitterFrequency ("Glitter Density", Float) = 300
		_GlitterJitter ("Glitter Jitter", Range(0, 1)) = 1
		_GlitterSpeed ("Glitter Speed", Float) = 10
		_GlitterSize ("Glitter Size", Range(0, 1)) = 0.3
		_GlitterContrast ("Glitter Contrast--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(1, 1000)) = 300
		_GlitterAngleRange ("Glitter Angle Range--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 90)) = 90
		_GlitterMinBrightness ("Glitter Min Brightness", Range(0, 1)) = 0
		_GlitterBrightness ("Glitter Max Brightness", Range(0, 40)) = 3
		_GlitterBias ("Glitter Bias--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==0}}", Range(0, 1)) = 0.8
		_GlitterHideInShadow ("Hide in shadow", Range(0, 1)) = 0
		_GlitterCenterSize ("dim light--{condition_show:{type:AND,condition1:{type:PROPERTY_BOOL,data:_GlitterMode==1},condition2:{type:PROPERTY_BOOL,data:_GlitterShape==1}}}", Range(0, 1)) = 0.08
		_glitterFrequencyLinearEmissive ("Frequency--{condition_show:{type:PROPERTY_BOOL,data:_GlitterMode==1}}", Range(0, 100)) = 20
		_GlitterJaggyFix ("Jaggy Fix--{condition_show:{type:PROPERTY_BOOL,data:_GlitterShape==1}}", Range(0, 0.1)) = 0
		[HideInInspector] m_start_glitterHueShift ("Hue Shift", Float) = 0
		[ToggleUI] _GlitterHueShiftEnabled ("Enabled", Float) = 0
		_GlitterHueShiftSpeed ("Shift Speed", Float) = 0
		_GlitterHueShift ("Hue Shift", Range(0, 1)) = 0
		[HideInInspector] m_end_glitterHueShift ("Hue Shift", Float) = 0
		[HideInInspector] m_start_glitterRandom ("Random Things", Float) = 0
		[ToggleUI] _GlitterRandomColors ("Random Colors", Float) = 0
		[MultiSlider] _GlitterMinMaxSaturation ("Saturation Range", Vector) = (0.8,1,0,1)
		[MultiSlider] _GlitterMinMaxBrightness ("Brightness Range", Vector) = (0.8,1,0,1)
		[ToggleUI] _GlitterRandomSize ("Random Size?", Float) = 0
		[MultiSlider] _GlitterMinMaxSize ("Size Range", Vector) = (0.1,0.5,0,1)
		[ToggleUI] _GlitterRandomRotation ("Random Tex Rotation", Float) = 0
		[HideInInspector] m_end_glitterRandom ("Random Colors", Float) = 0
		[HideInInspector] m_end_glitter ("Glitter / Sparkle", Float) = 0
		[HideInInspector] m_start_Text ("MSDF Text Overlay", Float) = 0
		_TextGlyphs ("Font Array", 2D) = "black" {}
		_TextPixelRange ("Pixel Range", Float) = 4
		[ThryToggle(EFFECT_BUMP)] _TextEnabled ("Text?", Float) = 0
		[HideInInspector] m_start_TextFPS ("FPS", Float) = 0
		[ToggleUI] _TextFPSEnabled ("FPS Text?", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextFPSUV ("FPS UV", Float) = 0
		_TextFPSColor ("Color", Vector) = (1,1,1,1)
		_TextFPSEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[Vector2] _TextFPSOffset ("Offset", Vector) = (0,0,0,0)
		_TextFPSRotation ("Rotation", Range(0, 360)) = 0
		[Vector2] _TextFPSScale ("Scale", Vector) = (1,1,1,1)
		_TextFPSPadding ("Padding Reduction", Vector) = (0,0,0,0)
		[HideInInspector] m_end_TextFPS ("FPS", Float) = 0
		[HideInInspector] m_start_TextPosition ("Position", Float) = 0
		[ToggleUI] _TextPositionEnabled ("Position Text?", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextPositionUV ("Position UV", Float) = 0
		_TextPositionColor ("Color", Vector) = (1,0,1,1)
		_TextPositionEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[Vector2] _TextPositionOffset ("Offset", Vector) = (0,0,0,0)
		_TextPositionRotation ("Rotation", Range(0, 360)) = 0
		[Vector2] _TextPositionScale ("Scale", Vector) = (1,1,1,1)
		_TextPositionPadding ("Padding Reduction", Vector) = (0,0,0,0)
		[HideInInspector] m_end_TextPosition ("Position", Float) = 0
		[HideInInspector] m_start_TextInstanceTime ("Instance Time", Float) = 0
		[ToggleUI] _TextTimeEnabled ("Time Text?", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _TextTimeUV ("Time UV", Float) = 0
		_TextTimeColor ("Color", Vector) = (1,0,1,1)
		_TextTimeEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[Vector2] _TextTimeOffset ("Offset", Vector) = (0,0,0,0)
		_TextTimeRotation ("Rotation", Range(0, 360)) = 0
		[Vector2] _TextTimeScale ("Scale", Vector) = (1,1,1,1)
		_TextTimePadding ("Padding Reduction", Vector) = (0,0,0,0)
		[HideInInspector] m_end_TextInstanceTime ("Instance Time", Float) = 0
		[HideInInspector] m_end_Text ("MSDF Text Overlay", Float) = 0
		[HideInInspector] m_start_mirrorOptions ("Mirror", Float) = 0
		[ThryToggle(_REQUIRE_UV2)] _EnableMirrorOptions ("Enable Mirror Options", Float) = 0
		[Enum(ShowInBoth, 0, ShowOnlyInMirror, 1, DontShowInMirror, 2)] _Mirror ("Show in mirror", Float) = 0
		[ToggleUI] _EnableMirrorTexture ("Enable Mirror Texture", Float) = 0
		_MirrorTexture ("Mirror Tex", 2D) = "white" {}
		[Vector2] [HideInInspector] _MirrorTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MirrorTextureUV ("UV", Float) = 0
		[HideInInspector] m_end_mirrorOptions ("Mirror", Float) = 0
		[HideInInspector] m_start_distanceFade ("Distance Fade", Float) = 0
		_MainMinAlpha ("Minimum Alpha", Range(0, 1)) = 0
		_MainFadeTexture ("Fade Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _MainFadeTexturePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _MainFadeTextureUV ("UV", Float) = 0
		[Vector2] _MainDistanceFade ("Distance Fade X to Y", Vector) = (0,0,0,0)
		[HideInInspector] m_end_distanceFade ("Distance Fade", Float) = 0
		[HideInInspector] m_start_angularFade ("Angular Fade", Float) = 0
		[ThryToggle(_SUNDISK_NONE)] _EnableRandom ("Enable Angular Fade", Float) = 0
		[Enum(Camera Face Model, 0, Model Face Camera, 1, Face Each Other, 2)] _AngleType ("Angle Type", Float) = 0
		[Enum(Model, 0, Vertex, 1)] _AngleCompareTo ("Model or Vert Positon", Float) = 0
		[Vector3] _AngleForwardDirection ("Forward Direction", Vector) = (0,0,1,0)
		_CameraAngleMin ("Camera Angle Min", Range(0, 180)) = 45
		_CameraAngleMax ("Camera Angle Max", Range(0, 180)) = 90
		_ModelAngleMin ("Model Angle Min", Range(0, 180)) = 45
		_ModelAngleMax ("Model Angle Max", Range(0, 180)) = 90
		_AngleMinAlpha ("Min Alpha", Range(0, 1)) = 0
		[HideInInspector] m_end_angularFade ("Angular Fade", Float) = 0
		[HideInInspector] m_start_distortionFlow ("UV Distortion", Float) = 0
		[ThryToggle(USER_LUT)] _EnableDistortion ("Enabled?", Float) = 0
		_DistortionMask ("Mask--{reference_properties:[_DistortionMaskPan, _DistortionMaskUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DistortionMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] [HideInInspector] _DistortionMaskUV ("UV", Float) = 0
		_DistortionFlowTexture ("Distortion Texture 1", 2D) = "black" {}
		_DistortionFlowTexture1 ("Distortion Texture 2", 2D) = "black" {}
		_DistortionStrength ("Strength1", Float) = 0.5
		_DistortionStrength1 ("Strength2", Float) = 0.5
		[Vector2] _DistortionSpeed ("Speed1", Vector) = (0.5,0.5,0,0)
		[Vector2] _DistortionSpeed1 ("Speed2", Vector) = (0.5,0.5,0,0)
		[HideInInspector] m_end_distortionFlow ("UV Distortion", Float) = 0
		[HideInInspector] m_Patreon ("Patreon", Float) = 0
		[HideInInspector] m_start_Video ("Video", Float) = 0
		[ThryToggle(BLOOM)] _EnableVideo ("Enable Video", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _VideoUVNumber ("Screen UV#", Float) = 0
		[Enum(LCD, 0, TN, 1, CRT, 2, OLED, 3, Gameboy, 4, Projector, 5)] _VideoType ("Screen Type", Float) = 3
		_VideoBacklight ("Brightness", Range(0, 100)) = 1
		_VideoPixelTexture ("Pixel Texture", 2D) = "white" {}
		[Vector2] _VideoResolution ("Resolution", Vector) = (1280,720,0,1)
		_VideoMaskTexture ("Mask", 2D) = "white" {}
		[Vector2] _VideoMaskPanning ("Mask Pan Speed", Vector) = (0,0,0,0)
		[HideInInspector] m_start_VideoSettings ("Video Texture Settings", Float) = 0
		[ToggleUI] _VideoEnableVideoPlayer ("Enable Video Player", Float) = 0
		[ToggleUI] _VideoPixelateToResolution ("Pixelate To Resolution", Float) = 0
		[ToggleUI] _VideoRepeatVideoTexture ("Clamp To UV", Float) = 0
		[Vector2] _VideoPanning ("Panning Speed", Vector) = (0,0,0,0)
		[Vector2] _VideoTiling ("Tiling", Vector) = (1,1,0,0)
		[Vector2] _VideoOffset ("Offset", Vector) = (0,0,0,0)
		_VideoSaturation ("Saturation", Range(-1, 3)) = 0
		_VideoContrast ("Contrast boost", Range(0, 3)) = 0
		[HideInInspector] m_end_VideoSettings ("Video Texture Settings", Float) = 0
		[HideInInspector] m_start_VideoDebug ("Video Debug", Float) = 0
		[ToggleUI] _VideoEnableDebug ("Enable Debug", Float) = 0
		_VideoDebugTexture ("Video Debug Tex", 2D) = "white" {}
		[HideInInspector] m_end_VideoDebug ("Video Debug", Float) = 0
		[HideInInspector] m_start_CRT ("CRT Options", Float) = 0
		_VideoCRTRefreshRate ("Refresh Rate", Float) = 24
		_VideoCRTPixelEnergizedTime ("Pixel Fade Time", Float) = 1.9
		[HideInInspector] m_end_CRT ("CRT Options", Float) = 0
		[HideInInspector] m_start_Gameboy ("Gameboy Options", Float) = 0
		[Gradient] _VideoGameboyRamp ("Color Ramp", 2D) = "white" {}
		[HideInInspector] m_end_Gameboy ("Gameboy Options", Float) = 0
		[HideInInspector] m_end_Video ("Video", Float) = 0
		[HideInInspector] m_start_TouchOptions ("Touch FX", Float) = 0
		[HideInInspector] m_start_Bulge ("Bulge", Float) = 0
		[ThryToggle(BLOOM_LOW)] _EnableBulge ("Bulge", Float) = 0
		_BulgeMask ("Bulge Mask", 2D) = "white" {}
		_BuldgeFadeLength ("Touch Distance", Float) = 0.02
		_BuldgeHeight ("Bulge Height", Range(-0.2, 0.2)) = 0.02
		[HideInInspector] m_end_Bulge ("Bulge", Float) = 0
		[HideInInspector] m_start_TouchGlow ("Touch Color--{reference_property:_EnableTouchGlow, is_hideable:true}", Float) = 0
		[ThryToggle(GRAIN)] [HideInInspector] _EnableTouchGlow ("Enable Touch Color", Float) = 0
		[Enum(Depth, 0, UVs, 1)] _DepthGradientTextureUV ("UVs From", Float) = 0
		[Enum(Replace, 0, Add, 1, Multiply, 2)] _DepthGradientBlend ("Color Blend", Float) = 0
		_DepthGlowColor ("Depth Glow Color", Vector) = (1,1,1,1)
		[Gradient] _DepthGradient ("Depth Gradient--{reference_properties:[_DepthGradientPan, _DepthGradientUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DepthGradientPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DepthGradientUV ("UV", Float) = 0
		_DepthMask ("Depth Mask--{reference_properties:[_DepthMaskPan, _DepthMaskUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _DepthMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _DepthMaskUV ("UV", Float) = 0
		_DepthGlowEmission ("Depth Glow Emission", Float) = 3
		_FadeLength ("Fade Length", Float) = 20
		_DepthAlphaMin ("Alpha Min", Range(0, 1)) = 1
		_DepthAlphaMax ("Alpha Max", Range(0, 1)) = 1
		[HideInInspector] m_end_TouchGlow ("Touch Color", Float) = 0
		[HideInInspector] m_end_TouchOptions ("Touch FX", Float) = 0
		[HideInInspector] m_start_Hologram ("Hologram Alpha", Float) = 0
		[ThryToggle(DEPTH_OF_FIELD)] _EnableHolo ("Enable Hologram Alpha", Float) = 0
		[Curve] _HoloAlphaMap ("Alpha Map", 2D) = "white" {}
		[Enum(World Space, 0, Local Space, 1, UV, 2)] _HoloCoordinateSpace ("Coordinate Space", Float) = 0
		_HoloDirection ("Scroll Direction", Vector) = (0,1,0,1)
		_HoloLineDensity ("Line Density", Float) = 10
		_HoloScrollSpeed ("Scroll Speed", Float) = 1
		[HideInInspector] m_start_FresnelAlpha ("Fresnel Alpha", Float) = 0
		_HoloFresnelAlpha ("Intensity", Range(0, 1)) = 0
		_HoloRimSharpness ("Sharpness", Range(0, 1)) = 0.5
		_HoloRimWidth ("Width", Range(0, 1)) = 0.5
		[HideInInspector] m_end_FresnelAlpha ("Fresnel Alpha", Float) = 0
		[HideInInspector] m_end_Hologram ("Hologram Alpha", Float) = 0
		[HideInInspector] m_start_GrabPass ("GrabPass Transparency", Float) = 0
		[ToggleUI] _commentIfZero_EnableGrabpass ("Enable GrabPass", Float) = 0
		[ToggleUI] _GrabPassUseAlpha ("Use Alpha", Float) = 1
		_GrabPassBlendMap ("Blend Map--{reference_properties:[_GrabPassBlendMapPan, _GrabPassBlendMapUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _GrabPassBlendMapPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _GrabPassBlendMapUV ("UV", Float) = 0
		_GrabPassBlendFactor ("Blend Amount", Range(0, 1)) = 1
		[Enum(UnityEngine.Rendering.BlendMode)] _GrabSrcBlend ("Source Blend", Float) = 2
		[Enum(UnityEngine.Rendering.BlendMode)] _GrabDstBlend ("Destination Blend", Float) = 0
		[HideInInspector] m_start_Refraction ("Refraction", Float) = 0
		[ToggleUI] _RefractionEnabled ("Enable Refraction,", Float) = 0
		_RefractionIndex ("Refraction", Range(0, 3)) = 1.333333
		_RefractionChromaticAberattion ("Chromatic Aberration", Range(0, 1)) = 0
		[HideInInspector] m_end_Refraction ("Refraction", Float) = 0
		[HideInInspector] m_start_Blur ("Blur", Float) = 0
		[ThryToggle(CHROMATIC_ABERRATION_LOW)] _EnableBlur ("Enable Blur", Float) = 0
		_GrabBlurDistance ("Blur Distance", Range(0, 1)) = 0
		[IntRange] _GrabBlurQuality ("Blur Quality", Range(1, 10)) = 2
		[IntRange] _GrabBlurDirections ("Blur Directions", Range(1, 10)) = 4
		[HideInInspector] m_end_Blur ("Blur", Float) = 0
		[HideInInspector] m_end_GrabPass ("GrabPass Transparency", Float) = 0
		[HideInInspector] m_start_Iridescence ("Iridescence", Float) = 0
		[ThryToggle(BLOOM_LENS_DIRT)] _EnableIridescence ("Enable Iridescence", Float) = 0
		[Gradient] _IridescenceRamp ("Ramp", 2D) = "white" {}
		[ToggleUI] _IridescenceNormalToggle ("Custom Normals?", Float) = 0
		[Normal] _IridescenceNormalMap ("Normal Map", 2D) = "bump" {}
		_IridescenceMask ("Mask", 2D) = "white" {}
		_IridescenceNormalIntensity ("Normal Intensity", Range(0, 10)) = 1
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _IridescenceNormalUV ("Normal UV", Float) = 0
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] _IridescenceMaskUV ("Mask UV", Float) = 0
		[Enum(vertex, 0, pixel, 1)] _IridescenceNormalSelection ("Normal Select", Float) = 1
		_IridescenceIntensity ("Intensity", Range(0, 10)) = 1
		_IridescenceAddBlend ("Blend Add", Range(0, 1)) = 0
		_IridescenceReplaceBlend ("Blend Replace", Range(0, 1)) = 0
		_IridescenceMultiplyBlend ("Blend Multiply", Range(0, 1)) = 0
		_IridescenceEmissionStrength ("Emission Strength", Range(0, 20)) = 0
		[Enum(Run Early, 0, Run Late, 1)] _IridescenceTime ("When To Run", Float) = 0
		[HideInInspector] m_end_Iridescence ("Iridescence", Float) = 0
		[HideInInspector] m_start_VertexGlitch ("Vertex Glitching", Float) = 0
		[ToggleUI] _EnableVertexGlitch ("Enable Vertex Glitching", Float) = 0
		_VertexGlitchFrequency ("Glitch Interval", Float) = 0
		_VertexGlitchThreshold ("Glitch Threshold", Range(0, 1)) = 1
		_VertexGlitchStrength ("Glitch Strength", Range(0, 10)) = 1
		[HideInInspector] m_end_VertexGlitch ("Vertex Glitching", Float) = 0
		[HideInInspector] m_start_Spawns ("Spawns", Float) = 0
		[HideInInspector] m_start_ScifiSpawnIn ("Sci Fi", Float) = 0
		[ToggleUI] _EnableScifiSpawnIn ("Enable Sci Fi Spawn", Float) = 0
		_SpawnInNoise ("Spawn Noise", 2D) = "black" {}
		_SpawnInNoiseIntensity ("Noise Intensity", Range(0, 1)) = 0.35
		_SpawnInAlpha ("Spawn Alpha", Range(0, 1)) = 0
		[Vector3] _SpawnInGradientStart ("Gradient Start", Vector) = (0,2,0,1)
		[Vector3] _SpawnInGradientFinish ("Gradient End", Vector) = (0,-2,0,1)
		[HDR] _SpawnInEmissionColor ("Emission Color", Vector) = (1,1,1,1)
		_SpawnInEmissionOffset ("Emission Width", Range(0, 1)) = 0.1
		_SpawnInVertOffset ("Vertex Offset Speed", Float) = 10
		_SpawnInVertOffsetOffset ("vert width", Range(0, 1)) = 0.1
		[HideInInspector] m_end_SciFiSpawnIn ("Sci Fi", Float) = 0
		[HideInInspector] m_end_Spawns ("Spawns", Float) = 0
		[HideInInspector] m_start_Voronoi ("Voronoi", Float) = 0
		[Enum(2D(Fast), 0, 3D(Fast with color bugs), 1, 3D(slow but no bugs), 2)] _VoronoiType ("Type", Float) = 1
		[Enum(Local, 0, World, 1, UV, 2)] _VoronoiSpace ("Space", Float) = 0
		[Enum(Color and Emission, 0, Just Emission, 1)] _VoronoiBlend ("Blend", Float) = 0
		[ThryToggle(CHROMATIC_ABERRATION)] _EnableVoronoi ("Enable Voronoi", Float) = 0
		[ToggleUI] _VoronoiEffectsMaterialAlpha ("Effects Material Alpha", Float) = 0
		_VoronoiMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _VoronoiMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _VoronoiMaskUV ("UV", Float) = 0
		_VoronoiNoise ("Edge Noise", 2D) = "black" {}
		[Vector2] [HideInInspector] _VoronoiNoisePan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _VoronoiNoiseUV ("UV", Float) = 0
		_VoronoiNoiseIntensity ("Noise Intensity", Range(0, 1)) = 0.1
		_VoronoiColor0 ("Color 0", Vector) = (0,0,0,1)
		_VoronoiEmission0 ("Emission 0", Range(0, 20)) = 0
		_VoronoiColor1 ("Color 1", Vector) = (1,1,1,1)
		_VoronoiEmission1 ("Emission 1", Range(0, 20)) = 0
		[Vector2] _VoronoiGradient ("Gradient", Vector) = (0.04,0.05,0,0)
		_VoronoiScale ("Scale", Float) = 5
		[Vector3] _VoronoiSpeed ("Speed", Vector) = (3,3,3,1)
		[HideInInspector] m_start_voronoiRandom ("Voronoi Random Cell Color", Float) = 0
		[ToggleUI] _VoronoiEnableRandomCellColor ("Rando Cell Col", Float) = 0
		[MultiSlider] _VoronoiRandomMinMaxSaturation ("Saturation Range", Vector) = (0.8,1,0,1)
		[MultiSlider] _VoronoiRandomMinMaxBrightness ("Brightness Range", Vector) = (0.8,1,0,1)
		[HideInInspector] m_end_voronoiRandom ("Voronoi Random Cell Color", Float) = 0
		[HideInInspector] m_end_Voronoi ("Vertex Glitching", Float) = 0
		[HideInInspector] m_start_BlackLight ("Black Light Mask", Float) = 0
		[ThryToggle(_SPECULARHIGHLIGHTS_OFF)] [HideInInspector] _BlackLightMaskEnabled ("Black Light Mask Enabled", Float) = 0
		_BlackLightMaskKeys ("Mask Keys", Vector) = (2,3,4,5)
		_BlackLightMaskStart ("Gradient Start", Vector) = (0,0,0,0)
		_BlackLightMaskEnd ("Gradient End", Vector) = (1,1,1,1)
		[ToggleUI] _BlackLightMaskDebug ("Visualize", Float) = 0
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskMetallic ("Metallic", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskClearCoat ("Clear Coat", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskMatcap ("Matcap 1", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskMatcap2 ("Matcap 2", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskEmission ("Emission 1", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskEmission2 ("Emission 2", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskFlipbook ("Flipbook", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskDissolve ("Dissolve", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskPanosphere ("Panosphere", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskGlitter ("Glitter", Float) = 4
		[Enum(X, 0, Y, 1, Z, 2, W, 3, Off, 4)] _BlackLightMaskIridescence ("Iridescence", Float) = 4
		[HideInInspector] m_end_BlackLight ("Black Light", Float) = 0
		[HideInInspector] m_outlineOptions ("Outlines", Float) = 0
		[ToggleUI] _commentIfZero_EnableOutlinePass ("Enable Outlines", Float) = 0
		[Enum(Basic, 0, Tint, 1, Rim Light, 2, Directional, 3, DropShadow, 4)] _OutlineMode ("Mode", Float) = 0
		_OutlineTintMix ("Tint Mix--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==1}}", Range(0, 1)) = 0
		_OutlineRimLightBlend ("Rim Light Blend--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==2}}", Range(0, 1)) = 0
		_OutlinePersonaDirection ("directional Offset XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==3}}", Vector) = (1,0,0,0)
		_OutlineDropShadowOffset ("Drop Direction XY--{condition_show:{type:PROPERTY_BOOL,data:_OutlineMode==4}}", Vector) = (1,0,0,0)
		[ToggleUI] _OutlineFixedSize ("Fixed Size?", Float) = 0
		[Enum(Off, 0, Normals, 1, Mask VC.r, 2)] _OutlineUseVertexColors ("Vertex Color", Float) = 0
		[ToggleUI] _OutlineLit ("Enable Lighting", Float) = 1
		_LineWidth ("Width", Float) = 0
		_LineColor ("Color", Vector) = (1,1,1,1)
		_OutlineEmission ("Outline Emission", Float) = 0
		_OutlineTexture ("Outline Texture--{reference_properties:[_OutlineTexturePan, _OutlineTextureUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _OutlineTexturePan ("Outline Texture Pan", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _OutlineTextureUV ("UV", Float) = 0
		_OutlineMask ("Outline Mask--{reference_properties:[_OutlineMaskPan, _OutlineMaskUV]}", 2D) = "white" {}
		[Vector2] [HideInInspector] _OutlineMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _OutlineMaskUV ("UV", Float) = 0
		_OutlineShadowStrength ("Shadow Strength", Range(0, 1)) = 1
		[HideInInspector] m_start_outlineAdvanced ("Advanced", Float) = 0
		[Vector2] _OutlineFadeDistance ("Outline distance Fade", Vector) = (0,0,0,0)
		[Enum(UnityEngine.Rendering.CullMode)] _OutlineCull ("Cull", Float) = 1
		_OutlineOffsetFactor ("Offset Factor", Float) = 0
		_OutlineOffsetUnits ("Offset Units", Float) = 0
		[HideInInspector] m_end_outlineAdvanced ("Advanced", Float) = 0
		[HideInInspector] m_ParallaxMap ("Parallax", Float) = 0
		[ThryToggle(_PARALLAXMAP)] _ParallaxMap ("Enable Parallax FX", Float) = 0
		[ToggleUI] _ParallaxHeightMapEnabled ("Enable Parallax Height", Float) = 0
		[ToggleUI] _ParallaxInternalMapEnabled ("Enable Parallax Internal", Float) = 0
		[HideInInspector] m_start_parallaxHeightmap ("Heightmap", Float) = 0
		[Vector2] _ParallaxHeightMapPan ("Pan", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3)] _ParallaxUV ("Parallax UV", Float) = 0
		_ParallaxHeightMap ("Height Map", 2D) = "black" {}
		_ParallaxHeightMapMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _ParallaxHeightMapMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _ParallaxHeightMapMaskUV ("UV", Float) = 0
		_ParallaxStrength ("Parallax Strength", Range(0, 1)) = 0
		[HideInInspector] m_end_parallaxHeightmap ("Heightmap", Float) = 0
		[HideInInspector] m_start_parallaxInternal ("Internal", Float) = 0
		[Enum(Basic, 0, HeightMap, 1)] _ParallaxInternalHeightmapMode ("Parallax Mode", Float) = 0
		[ToggleUI] _ParallaxInternalHeightFromAlpha ("HeightFromAlpha", Float) = 0
		_ParallaxInternalMap ("Internal Map", 2D) = "black" {}
		_ParallaxInternalMapMask ("Mask", 2D) = "white" {}
		[Vector2] [HideInInspector] _ParallaxInternalMapMaskPan ("Panning", Vector) = (0,0,0,0)
		[Enum(UV0, 0, UV1, 1, UV2, 2, UV3, 3, DistortedUV1, 4)] [HideInInspector] _ParallaxInternalMapMaskUV ("UV", Float) = 0
		_ParallaxInternalIterations ("Parallax Internal Iterations", Range(1, 50)) = 1
		_ParallaxInternalMinDepth ("Min Depth", Float) = 0
		_ParallaxInternalMaxDepth ("Max Depth", Float) = 1
		_ParallaxInternalMinFade ("Min Depth Brightness", Range(0, 5)) = 0
		_ParallaxInternalMaxFade ("Max Depth Brightness", Range(0, 5)) = 1
		_ParallaxInternalMinColor ("Min Depth Color", Vector) = (1,1,1,1)
		_ParallaxInternalMaxColor ("Max Depth Color", Vector) = (1,1,1,1)
		[Vector2] _ParallaxInternalPanSpeed ("Pan Speed", Vector) = (0,0,0,0)
		[Vector2] _ParallaxInternalPanDepthSpeed ("Per Level Speed Multiplier", Vector) = (0,0,0,0)
		[HideInInspector] m_end_parallaxInternal ("Internal", Float) = 0
		[HideInInspector] m_start_parallaxAdvanced ("Advanced", Float) = 0
		_ParallaxBias ("Parallax Bias (0.42)", Float) = 0.42
		[HideInInspector] m_end_parallaxAdvanced ("Advanced", Float) = 0
		[HideInInspector] m_thirdparty ("Third Party", Float) = 0
		[HideInInspector] m_start_vilarPenetrator ("Raliv Dynamic Penetration System--{reference_property:_PenetratorEnabled, button_right:{text:Gumroad,action:{type:URL,data:https://gumroad.com/l/lwthuB},hover:Buy},is_hideable:true}", Float) = 0
		[ToggleUI] [HideInInspector] _PenetratorEnabled ("Enabled", Float) = 0
		[Helpbox(1)] _RalivHelp ("To use this you'll need to purchase the shader from the gumroad link in the header", Float) = 0
		_squeeze ("squeeze", Range(0, 0.2)) = 0
		_SqueezeDist ("SqueezeDist", Range(0, 0.1)) = 0
		_BulgeOffset ("BulgeOffset", Range(0, 0.3)) = 0
		_BulgePower ("BulgePower", Range(0, 0.01)) = 0
		_Length ("Penetrator Length", Range(0, 3)) = 0
		_EntranceStiffness ("EntranceStiffness", Range(0.01, 1)) = 0
		_Curvature ("Curvature", Range(-1, 1)) = 0
		_ReCurvature ("ReCurvature", Range(-1, 1)) = 0
		_WriggleSpeed ("WriggleSpeed", Range(0.1, 30)) = 0.28
		_Wriggle ("Wriggle", Range(0, 1)) = 0.28
		_OrificeChannel ("OrificeChannel Please Use 0", Float) = 0
		[HideInInspector] __dirty ("", Float) = 1
		[HideInInspector] m_end_vilarPenetrator ("Vilar Penetrator", Float) = 0
		[HideInInspector] m_renderingOptions ("Rendering Options", Float) = 0
		[Enum(UnityEngine.Rendering.CullMode)] _Cull ("Cull", Float) = 2
		[Enum(UnityEngine.Rendering.CompareFunction)] _ZTest ("ZTest", Float) = 4
		[Enum(Off, 0, On, 1)] _ZWrite ("ZWrite", Float) = 1
		[Enum(Thry.ColorMask)] _ColorMask ("Color Mask", Float) = 15
		_OffsetFactor ("Offset Factor", Float) = 0
		_OffsetUnits ("Offset Units", Float) = 0
		[ToggleUI] _IgnoreFog ("Ignore Fog", Float) = 0
		[HideInInspector] Instancing ("Instancing", Float) = 0
		[HideInInspector] m_start_blending ("Blending", Float) = 0
		[Enum(Thry.BlendOp)] _BlendOp ("RGB Blend Op", Float) = 0
		[Enum(Thry.BlendOp)] _BlendOpAlpha ("Alpha Blend Op", Float) = 0
		[Enum(UnityEngine.Rendering.BlendMode)] _SrcBlend ("Source Blend", Float) = 1
		[Enum(UnityEngine.Rendering.BlendMode)] _DstBlend ("Destination Blend", Float) = 0
		[HideInInspector] m_end_blending ("Blending", Float) = 0
		[HideInInspector] m_start_StencilPassOptions ("Stencil", Float) = 0
		[IntRange] _StencilRef ("Stencil Reference Value", Range(0, 255)) = 0
		[IntRange] _StencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
		[IntRange] _StencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
		[Enum(UnityEngine.Rendering.StencilOp)] _StencilPassOp ("Stencil Pass Op", Float) = 0
		[Enum(UnityEngine.Rendering.StencilOp)] _StencilFailOp ("Stencil Fail Op", Float) = 0
		[Enum(UnityEngine.Rendering.StencilOp)] _StencilZFailOp ("Stencil ZFail Op", Float) = 0
		[Enum(UnityEngine.Rendering.CompareFunction)] _StencilCompareFunction ("Stencil Compare Function", Float) = 8
		[HideInInspector] m_end_StencilPassOptions ("Stencil", Float) = 0
		[HideInInspector] m_start_OutlineStencil ("Outline Stencil--{is_hideable:true, condition_show:{type:PROPERTY_BOOL,data:_commentIfZero_EnableOutlinePass==1}}", Float) = 0
		[IntRange] _OutlineStencilRef ("Stencil Reference Value", Range(0, 255)) = 0
		[IntRange] _OutlineStencilReadMask ("Stencil ReadMask Value", Range(0, 255)) = 255
		[IntRange] _OutlineStencilWriteMask ("Stencil WriteMask Value", Range(0, 255)) = 255
		[Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilPassOp ("Stencil Pass Op", Float) = 0
		[Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilFailOp ("Stencil Fail Op", Float) = 0
		[Enum(UnityEngine.Rendering.StencilOp)] _OutlineStencilZFailOp ("Stencil ZFail Op", Float) = 0
		[Enum(UnityEngine.Rendering.CompareFunction)] _OutlineStencilCompareFunction ("Stencil Compare Function", Float) = 8
		[HideInInspector] m_end_OutlineStencil ("Outline Stencil", Float) = 0
		[HideInInspector] m_start_debugOptions ("Debug", Float) = 0
		[ThryToggle(_COLOROVERLAY_ON)] [HideInInspector] _DebugEnabled ("Display Debug Info", Float) = 0
		_VertexUnwrap ("Unwrap", Range(0, 1)) = 0
		[Enum(Off, 0, Vertex Normal, 1, Pixel Normal, 2, Tangent, 3, Binormal, 4, Local 0 Distance, 5)] _DebugMeshData ("Mesh Data", Float) = 0
		[Enum(Off, 0, Attenuation, 1, Direct Lighting, 2, Indirect Lighting, 3, light Map, 4, Ramped Light Map, 5, Final Lighting, 6)] _DebugLightingData ("Lighting Data", Float) = 0
		[Enum(Off, 0, View Dir, 1, Tangent View Dir, 2, Forward Dir, 3, WorldPos, 4, View Dot Normal, 5)] _DebugCameraData ("Camera Data", Float) = 0
		[HideInInspector] m_end_debugOptions ("Debug", Float) = 0
		[HideInInspector] _ColorAnimated ("", Float) = 0
		[HideInInspector] _MainTexAnimated ("", Float) = 0
		[HideInInspector] _MainTex_STAnimated ("", Float) = 0
		[HideInInspector] _MainTexPanAnimated ("", Float) = 0
		[HideInInspector] _MainTextureUVAnimated ("", Float) = 0
		[HideInInspector] _SaturationAnimated ("", Float) = 0
		[HideInInspector] _MainVertexColoringAnimated ("", Float) = 0
		[HideInInspector] _MainUseVertexColorAlphaAnimated ("", Float) = 0
		[HideInInspector] _MainEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _BumpMapAnimated ("", Float) = 0
		[HideInInspector] _BumpMapUVAnimated ("", Float) = 0
		[HideInInspector] _BumpMapPanAnimated ("", Float) = 0
		[HideInInspector] _BumpScaleAnimated ("", Float) = 0
		[HideInInspector] _ClippingMaskAnimated ("", Float) = 0
		[HideInInspector] _ClippingMaskPanAnimated ("", Float) = 0
		[HideInInspector] _ClippingMaskUVAnimated ("", Float) = 0
		[HideInInspector] _MainHueShiftToggleAnimated ("", Float) = 0
		[HideInInspector] _MainHueShiftReplaceAnimated ("", Float) = 0
		[HideInInspector] _MainHueShiftAnimated ("", Float) = 0
		[HideInInspector] _MainHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _MainBrightnessAnimated ("", Float) = 0
		[HideInInspector] _MainColorAdjustTextureAnimated ("", Float) = 0
		[HideInInspector] _MainColorAdjustTexturePanAnimated ("", Float) = 0
		[HideInInspector] _MainColorAdjustTextureUVAnimated ("", Float) = 0
		[HideInInspector] _RGBMaskEnabledAnimated ("", Float) = 0
		[HideInInspector] _RGBUseVertexColorsAnimated ("", Float) = 0
		[HideInInspector] _RGBBlendMultiplicativeAnimated ("", Float) = 0
		[HideInInspector] _RGBMaskAnimated ("", Float) = 0
		[HideInInspector] _RGBMaskPanningAnimated ("", Float) = 0
		[HideInInspector] _RGBMaskUVAnimated ("", Float) = 0
		[HideInInspector] _RedColorAnimated ("", Float) = 0
		[HideInInspector] _RedTexureAnimated ("", Float) = 0
		[HideInInspector] _RGBRedPanningAnimated ("", Float) = 0
		[HideInInspector] _RGBRed_UVAnimated ("", Float) = 0
		[HideInInspector] _GreenColorAnimated ("", Float) = 0
		[HideInInspector] _GreenTextureAnimated ("", Float) = 0
		[HideInInspector] _RGBGreenPanningAnimated ("", Float) = 0
		[HideInInspector] _RGBGreen_UVAnimated ("", Float) = 0
		[HideInInspector] _BlueColorAnimated ("", Float) = 0
		[HideInInspector] _BlueTextureAnimated ("", Float) = 0
		[HideInInspector] _RGBBluePanningAnimated ("", Float) = 0
		[HideInInspector] _RGBBlue_UVAnimated ("", Float) = 0
		[HideInInspector] _RGBNormalBlendAnimated ("", Float) = 0
		[HideInInspector] _DetailMaskAnimated ("", Float) = 0
		[HideInInspector] _DetailMaskPanAnimated ("", Float) = 0
		[HideInInspector] _DetailMaskUVAnimated ("", Float) = 0
		[HideInInspector] _DetailTintAnimated ("", Float) = 0
		[HideInInspector] _DetailTexAnimated ("", Float) = 0
		[HideInInspector] _DetailTexPanAnimated ("", Float) = 0
		[HideInInspector] _DetailTexUVAnimated ("", Float) = 0
		[HideInInspector] _DetailTexIntensityAnimated ("", Float) = 0
		[HideInInspector] _DetailBrightnessAnimated ("", Float) = 0
		[HideInInspector] _DetailNormalMapAnimated ("", Float) = 0
		[HideInInspector] _DetailNormalMapScaleAnimated ("", Float) = 0
		[HideInInspector] _DetailNormalMapPanAnimated ("", Float) = 0
		[HideInInspector] _DetailNormalMapUVAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationLocalTranslationAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationLocalRotationAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationLocalScaleAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationWorldTranslationAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationHeightAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationHeightMaskAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationHeightPanAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationHeightUVAnimated ("", Float) = 0
		[HideInInspector] _VertexManipulationHeightBiasAnimated ("", Float) = 0
		[HideInInspector] _VertexRoundingEnabledAnimated ("", Float) = 0
		[HideInInspector] _VertexRoundingDivisionAnimated ("", Float) = 0
		[HideInInspector] _AlphaModAnimated ("", Float) = 0
		[HideInInspector] _CutoffAnimated ("", Float) = 0
		[HideInInspector] _DitheringEnabledAnimated ("", Float) = 0
		[HideInInspector] _DitherGradientAnimated ("", Float) = 0
		[HideInInspector] _ForceOpaqueAnimated ("", Float) = 0
		[HideInInspector] _MainShadowClipModAnimated ("", Float) = 0
		[HideInInspector] _AlphaToMaskAnimated ("", Float) = 0
		[HideInInspector] _MainAlphaToCoverageAnimated ("", Float) = 0
		[HideInInspector] _AlphaPremultiplyAnimated ("", Float) = 0
		[HideInInspector] _MainMipScaleAnimated ("", Float) = 0
		[HideInInspector] _DecalMaskAnimated ("", Float) = 0
		[HideInInspector] _DecalMaskPanAnimated ("", Float) = 0
		[HideInInspector] _DecalMaskUVAnimated ("", Float) = 0
		[HideInInspector] _DecalColorAnimated ("", Float) = 0
		[HideInInspector] _DecalEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _DecalTextureAnimated ("", Float) = 0
		[HideInInspector] _DecalTexturePanAnimated ("", Float) = 0
		[HideInInspector] _DecalTextureUVAnimated ("", Float) = 0
		[HideInInspector] _DecalTiledAnimated ("", Float) = 0
		[HideInInspector] _DecalScaleAnimated ("", Float) = 0
		[HideInInspector] _DecalPositionAnimated ("", Float) = 0
		[HideInInspector] _DecalRotationAnimated ("", Float) = 0
		[HideInInspector] _DecalRotationSpeedAnimated ("", Float) = 0
		[HideInInspector] _DecalBlendTypeAnimated ("", Float) = 0
		[HideInInspector] _DecalBlendAlphaAnimated ("", Float) = 0
		[HideInInspector] _DecalHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _DecalHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _DecalHueShiftAnimated ("", Float) = 0
		[HideInInspector] _DecalColor1Animated ("", Float) = 0
		[HideInInspector] _DecalEmissionStrength1Animated ("", Float) = 0
		[HideInInspector] _DecalTexture1Animated ("", Float) = 0
		[HideInInspector] _DecalTexture1PanAnimated ("", Float) = 0
		[HideInInspector] _DecalTexture1UVAnimated ("", Float) = 0
		[HideInInspector] _DecalTiled1Animated ("", Float) = 0
		[HideInInspector] _DecalScale1Animated ("", Float) = 0
		[HideInInspector] _DecalPosition1Animated ("", Float) = 0
		[HideInInspector] _DecalRotation1Animated ("", Float) = 0
		[HideInInspector] _DecalRotationSpeed1Animated ("", Float) = 0
		[HideInInspector] _DecalBlendType1Animated ("", Float) = 0
		[HideInInspector] _DecalBlendAlpha1Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftEnabled1Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftSpeed1Animated ("", Float) = 0
		[HideInInspector] _DecalHueShift1Animated ("", Float) = 0
		[HideInInspector] _DecalColor2Animated ("", Float) = 0
		[HideInInspector] _DecalEmissionStrength2Animated ("", Float) = 0
		[HideInInspector] _DecalTexture2Animated ("", Float) = 0
		[HideInInspector] _DecalTexture2PanAnimated ("", Float) = 0
		[HideInInspector] _DecalTexture2UVAnimated ("", Float) = 0
		[HideInInspector] _DecalTiled2Animated ("", Float) = 0
		[HideInInspector] _DecalScale2Animated ("", Float) = 0
		[HideInInspector] _DecalPosition2Animated ("", Float) = 0
		[HideInInspector] _DecalRotation2Animated ("", Float) = 0
		[HideInInspector] _DecalRotationSpeed2Animated ("", Float) = 0
		[HideInInspector] _DecalBlendType2Animated ("", Float) = 0
		[HideInInspector] _DecalBlendAlpha2Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftEnabled2Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftSpeed2Animated ("", Float) = 0
		[HideInInspector] _DecalHueShift2Animated ("", Float) = 0
		[HideInInspector] _DecalColor3Animated ("", Float) = 0
		[HideInInspector] _DecalEmissionStrength3Animated ("", Float) = 0
		[HideInInspector] _DecalTexture3Animated ("", Float) = 0
		[HideInInspector] _DecalTexture3PanAnimated ("", Float) = 0
		[HideInInspector] _DecalTexture3UVAnimated ("", Float) = 0
		[HideInInspector] _DecalTiled3Animated ("", Float) = 0
		[HideInInspector] _DecalScale3Animated ("", Float) = 0
		[HideInInspector] _DecalPosition3Animated ("", Float) = 0
		[HideInInspector] _DecalRotation3Animated ("", Float) = 0
		[HideInInspector] _DecalRotationSpeed3Animated ("", Float) = 0
		[HideInInspector] _DecalBlendType3Animated ("", Float) = 0
		[HideInInspector] _DecalBlendAlpha3Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftEnabled3Animated ("", Float) = 0
		[HideInInspector] _DecalHueShiftSpeed3Animated ("", Float) = 0
		[HideInInspector] _DecalHueShift3Animated ("", Float) = 0
		[HideInInspector] _EnableLightingAnimated ("", Float) = 0
		[HideInInspector] _LightingModeAnimated ("", Float) = 0
		[HideInInspector] _LightingStandardSmoothnessAnimated ("", Float) = 0
		[HideInInspector] _LightingShadingEnabledAnimated ("", Float) = 0
		[HideInInspector] _1st_ShadeColorAnimated ("", Float) = 0
		[HideInInspector] _1st_ShadeMapAnimated ("", Float) = 0
		[HideInInspector] _1st_ShadeMapPanAnimated ("", Float) = 0
		[HideInInspector] _1st_ShadeMapUVAnimated ("", Float) = 0
		[HideInInspector] _Use_1stShadeMapAlpha_As_ShadowMaskAnimated ("", Float) = 0
		[HideInInspector] _1stShadeMapMask_InverseAnimated ("", Float) = 0
		[HideInInspector] _Use_BaseAs1stAnimated ("", Float) = 0
		[HideInInspector] _2nd_ShadeColorAnimated ("", Float) = 0
		[HideInInspector] _2nd_ShadeMapAnimated ("", Float) = 0
		[HideInInspector] _2nd_ShadeMapPanAnimated ("", Float) = 0
		[HideInInspector] _2nd_ShadeMapUVAnimated ("", Float) = 0
		[HideInInspector] _Use_2ndShadeMapAlpha_As_ShadowMaskAnimated ("", Float) = 0
		[HideInInspector] _2ndShadeMapMask_InverseAnimated ("", Float) = 0
		[HideInInspector] _Use_1stAs2ndAnimated ("", Float) = 0
		[HideInInspector] _BaseColor_StepAnimated ("", Float) = 0
		[HideInInspector] _BaseShade_FeatherAnimated ("", Float) = 0
		[HideInInspector] _ShadeColor_StepAnimated ("", Float) = 0
		[HideInInspector] _1st2nd_Shades_FeatherAnimated ("", Float) = 0
		[HideInInspector] _LightingRampTypeAnimated ("", Float) = 0
		[HideInInspector] _ToonRampAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowMaskAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowMaskPanAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowMaskUVAnimated ("", Float) = 0
		[HideInInspector] _ShadowOffsetAnimated ("", Float) = 0
		[HideInInspector] _LightingGradientStartAnimated ("", Float) = 0
		[HideInInspector] _LightingGradientEndAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowColorAnimated ("", Float) = 0
		[HideInInspector] _ShadowStrengthAnimated ("", Float) = 0
		[HideInInspector] _AttenuationMultiplierAnimated ("", Float) = 0
		[HideInInspector] _LightingIgnoreAmbientColorAnimated ("", Float) = 0
		[HideInInspector] _LightingDirectColorModeAnimated ("", Float) = 0
		[HideInInspector] _LightingIndirectColorModeAnimated ("", Float) = 0
		[HideInInspector] _LightingMonochromaticAnimated ("", Float) = 0
		[HideInInspector] _LightingUncappedAnimated ("", Float) = 0
		[HideInInspector] _LightingOnlyUnityShadowsAnimated ("", Float) = 0
		[HideInInspector] _LightingMinLightBrightnessAnimated ("", Float) = 0
		[HideInInspector] _LightingMinShadowBrightnessRatioAnimated ("", Float) = 0
		[HideInInspector] _LightingDetailShadowsEnabledAnimated ("", Float) = 0
		[HideInInspector] _LightingDetailShadowsAnimated ("", Float) = 0
		[HideInInspector] _LightingDetailShadowsPanAnimated ("", Float) = 0
		[HideInInspector] _LightingDetailShadowsUVAnimated ("", Float) = 0
		[HideInInspector] _LightingDetailStrengthAnimated ("", Float) = 0
		[HideInInspector] _LightingEnableAOAnimated ("", Float) = 0
		[HideInInspector] _LightingAOTexAnimated ("", Float) = 0
		[HideInInspector] _LightingAOTexPanAnimated ("", Float) = 0
		[HideInInspector] _LightingAOTexUVAnimated ("", Float) = 0
		[HideInInspector] _AOStrengthAnimated ("", Range(0, 1)) = 0
		[HideInInspector] _UseShadowTextureAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowTextureAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowTexturePanAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowTextureUVAnimated ("", Float) = 0
		[HideInInspector] _LightingEnableHSLAnimated ("", Float) = 0
		[HideInInspector] _LightingHSLIntensityAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowHueAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowSaturationAnimated ("", Float) = 0
		[HideInInspector] _LightingShadowLightnessAnimated ("", Float) = 0
		[HideInInspector] _commentIfZero_LightingAdditiveEnableAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveTypeAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveGradientStartAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveGradientEndAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditivePassthroughAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveDetailStrengthAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveLimitIntensityAnimated ("", Float) = 0
		[HideInInspector] _LightingAdditiveMaxIntensityAnimated ("", Float) = 0
		[HideInInspector] _EnableSSSAnimated ("", Float) = 0
		[HideInInspector] _SSSColorAnimated ("", Float) = 0
		[HideInInspector] _SSSThicknessMapAnimated ("", Float) = 0
		[HideInInspector] _SSSThicknessMapPanAnimated ("", Float) = 0
		[HideInInspector] _SSSThicknessMapUVAnimated ("", Float) = 0
		[HideInInspector] _SSSThicknessModAnimated ("", Float) = 0
		[HideInInspector] _SSSSCaleAnimated ("", Float) = 0
		[HideInInspector] _SSSPowerAnimated ("", Float) = 0
		[HideInInspector] _SSSDistortionAnimated ("", Float) = 0
		[HideInInspector] _EnableRimLightingAnimated ("", Float) = 0
		[HideInInspector] _RimLightNormalAnimated ("", Float) = 0
		[HideInInspector] _RimLightingInvertAnimated ("", Float) = 0
		[HideInInspector] _RimLightColorAnimated ("", Float) = 0
		[HideInInspector] _RimWidthAnimated ("", Float) = 0
		[HideInInspector] _RimSharpnessAnimated ("", Float) = 0
		[HideInInspector] _RimStrengthAnimated ("", Float) = 0
		[HideInInspector] _RimBrightenAnimated ("", Float) = 0
		[HideInInspector] _RimLightColorBiasAnimated ("", Float) = 0
		[HideInInspector] _RimTexAnimated ("", Float) = 0
		[HideInInspector] _RimTexPanAnimated ("", Float) = 0
		[HideInInspector] _RimTexUVAnimated ("", Float) = 0
		[HideInInspector] _RimMaskAnimated ("", Float) = 0
		[HideInInspector] _RimMaskPanAnimated ("", Float) = 0
		[HideInInspector] _RimMaskUVAnimated ("", Float) = 0
		[HideInInspector] _RimHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _RimHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _RimHueShiftAnimated ("", Float) = 0
		[HideInInspector] _RimWidthNoiseTextureAnimated ("", Float) = 0
		[HideInInspector] _RimWidthNoiseTexturePanAnimated ("", Float) = 0
		[HideInInspector] _RimWidthNoiseTextureUVAnimated ("", Float) = 0
		[HideInInspector] _RimWidthNoiseStrengthAnimated ("", Float) = 0
		[HideInInspector] _ShadowMixAnimated ("", Float) = 0
		[HideInInspector] _ShadowMixThresholdAnimated ("", Float) = 0
		[HideInInspector] _ShadowMixWidthModAnimated ("", Float) = 0
		[HideInInspector] _EnableEnvironmentalRimAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroMaskAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroMaskPanAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroMaskUVAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroBlurAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroWidthAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroSharpnessAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroMinBrightnessAnimated ("", Float) = 0
		[HideInInspector] _RimEnviroIntensityAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicGlossMapAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicGlossMapToolTipAnimated ("", Float) = 0
		[HideInInspector] _BRDFInvertGlossinessAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicGlossMapPanAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicGlossMapUVAnimated ("", Float) = 0
		[HideInInspector] _BRDFSpecularMapAnimated ("", Float) = 0
		[HideInInspector] _BRDFSpecularMapToolTipAnimated ("", Float) = 0
		[HideInInspector] _BRDFSpecularMapPanAnimated ("", Float) = 0
		[HideInInspector] _BRDFSpecularMapUVAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicMapAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicMapToolTipAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicMapPanAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicMapUVAnimated ("", Float) = 0
		[HideInInspector] _BRDFMetallicAnimated ("", Float) = 0
		[HideInInspector] _BRDFGlossinessAnimated ("", Float) = 0
		[HideInInspector] _BRDFReflectanceAnimated ("", Float) = 0
		[HideInInspector] _BRDFAnisotropyAnimated ("", Float) = 0
		[HideInInspector] _BRDFReflectionsEnabledAnimated ("", Float) = 0
		[HideInInspector] _BRDFSpecularEnabledAnimated ("", Float) = 0
		[HideInInspector] _BRDFFallbackAnimated ("", Float) = 0
		[HideInInspector] _BRDFForceFallbackAnimated ("", Float) = 0
		[HideInInspector] _EnableMetallicAnimated ("", Float) = 0
		[HideInInspector] _CubeMapAnimated ("", Float) = 0
		[HideInInspector] _SampleWorldAnimated ("", Float) = 0
		[HideInInspector] _MetalReflectionTintAnimated ("", Float) = 0
		[HideInInspector] _MetallicTintMapAnimated ("", Float) = 0
		[HideInInspector] _MetallicTintMapPanAnimated ("", Float) = 0
		[HideInInspector] _MetallicTintMapUVAnimated ("", Float) = 0
		[HideInInspector] _MetallicMaskAnimated ("", Float) = 0
		[HideInInspector] _MetallicMaskPanAnimated ("", Float) = 0
		[HideInInspector] _MetallicMaskUVAnimated ("", Float) = 0
		[HideInInspector] _MetallicAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessMaskAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessMaskPanAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessMaskUVAnimated ("", Float) = 0
		[HideInInspector] _InvertSmoothnessAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessAnimated ("", Float) = 0
		[HideInInspector] _EnableClearCoatAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatMapAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatMapPanAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatMapUVAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatInvertSmoothnessAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatGlossinessAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatAnisotropyAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatEnableReflectionsAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatEnableSpecularAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatFallbackAnimated ("", Float) = 0
		[HideInInspector] _ClearcoatForceFallbackAnimated ("", Float) = 0
		[HideInInspector] _MatcapEnableAnimated ("", Float) = 0
		[HideInInspector] _MatcapColorAnimated ("", Float) = 0
		[HideInInspector] _MatcapAnimated ("", Float) = 0
		[HideInInspector] _MatcapBorderAnimated ("", Float) = 0
		[HideInInspector] _MatcapMaskAnimated ("", Float) = 0
		[HideInInspector] _MatcapMaskPanAnimated ("", Float) = 0
		[HideInInspector] _MatcapMaskInvertAnimated ("", Float) = 0
		[HideInInspector] _MatcapMaskUVAnimated ("", Float) = 0
		[HideInInspector] _MatcapEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _MatcapIntensityAnimated ("", Float) = 0
		[HideInInspector] _MatcapLightMaskAnimated ("", Float) = 0
		[HideInInspector] _MatcapReplaceAnimated ("", Float) = 0
		[HideInInspector] _MatcapMultiplyAnimated ("", Float) = 0
		[HideInInspector] _MatcapAddAnimated ("", Float) = 0
		[HideInInspector] _MatcapNormalAnimated ("", Float) = 0
		[HideInInspector] _MatcapHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _MatcapHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _MatcapHueShiftAnimated ("", Float) = 0
		[HideInInspector] _Matcap2EnableAnimated ("", Float) = 0
		[HideInInspector] _Matcap2ColorAnimated ("", Float) = 0
		[HideInInspector] _Matcap2Animated ("", Float) = 0
		[HideInInspector] _Matcap2BorderAnimated ("", Float) = 0
		[HideInInspector] _Matcap2MaskAnimated ("", Float) = 0
		[HideInInspector] _Matcap2MaskPanAnimated ("", Float) = 0
		[HideInInspector] _Matcap2MaskUVAnimated ("", Float) = 0
		[HideInInspector] _Matcap2MaskInvertAnimated ("", Float) = 0
		[HideInInspector] _Matcap2EmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _Matcap2IntensityAnimated ("", Float) = 0
		[HideInInspector] _Matcap2LightMaskAnimated ("", Float) = 0
		[HideInInspector] _Matcap2ReplaceAnimated ("", Float) = 0
		[HideInInspector] _Matcap2MultiplyAnimated ("", Float) = 0
		[HideInInspector] _Matcap2AddAnimated ("", Float) = 0
		[HideInInspector] _Matcap2NormalAnimated ("", Float) = 0
		[HideInInspector] _Matcap2HueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _Matcap2HueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _Matcap2HueShiftAnimated ("", Float) = 0
		[HideInInspector] _EnableSpecularAnimated ("", Float) = 0
		[HideInInspector] _SpecularTypeAnimated ("", Float) = 0
		[HideInInspector] _SpecularNormalAnimated ("", Float) = 0
		[HideInInspector] _SpecularTintAnimated ("", Float) = 0
		[HideInInspector] _SpecularMetallicAnimated ("", Float) = 0
		[HideInInspector] _SpecularSmoothnessAnimated ("", Float) = 0
		[HideInInspector] _SpecularMapAnimated ("", Float) = 0
		[HideInInspector] _SpecularMapPanAnimated ("", Float) = 0
		[HideInInspector] _SpecularMapUVAnimated ("", Float) = 0
		[HideInInspector] _SpecularInvertSmoothnessAnimated ("", Float) = 0
		[HideInInspector] _SpecularMaskAnimated ("", Float) = 0
		[HideInInspector] _SpecularMaskPanAnimated ("", Float) = 0
		[HideInInspector] _SpecularMaskUVAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessFromAnimated ("", Float) = 0
		[HideInInspector] _SpecWhatTangentAnimated ("", Float) = 0
		[HideInInspector] _AnisoSpec1AlphaAnimated ("", Float) = 0
		[HideInInspector] _AnisoSpec2AlphaAnimated ("", Float) = 0
		[HideInInspector] _Spec1OffsetAnimated ("", Float) = 0
		[HideInInspector] _Spec2SmoothnessAnimated ("", Float) = 0
		[HideInInspector] _AnisoUseTangentMapAnimated ("", Float) = 0
		[HideInInspector] _AnisoTangentMapAnimated ("", Float) = 0
		[HideInInspector] _AnisoTangentMapPanAnimated ("", Float) = 0
		[HideInInspector] _AnisoTangentMapUVAnimated ("", Float) = 0
		[HideInInspector] _SpecularToonStartAnimated ("", Float) = 0
		[HideInInspector] _SpecularToonEndAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMirroredAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicroAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicroMultiplierAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicroPanAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicroUVAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacroAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacroMultiplierAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacroPanAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacroUVAnimated ("", Float) = 0
		[HideInInspector] _SpecularToonInnerOuterAnimated ("", Float) = 0
		[HideInInspector] _EnableSpecular1Animated ("", Float) = 0
		[HideInInspector] _SpecularType1Animated ("", Float) = 0
		[HideInInspector] _SpecularNormal1Animated ("", Float) = 0
		[HideInInspector] _SpecularTint1Animated ("", Float) = 0
		[HideInInspector] _SpecularMetallic1Animated ("", Float) = 0
		[HideInInspector] _SpecularSmoothness1Animated ("", Float) = 0
		[HideInInspector] _SpecularMap1Animated ("", Float) = 0
		[HideInInspector] _SpecularMap1PanAnimated ("", Float) = 0
		[HideInInspector] _SpecularMap1UVAnimated ("", Float) = 0
		[HideInInspector] _SpecularInvertSmoothness1Animated ("", Float) = 0
		[HideInInspector] _SpecularMask1Animated ("", Float) = 0
		[HideInInspector] _SpecularMask1PanAnimated ("", Float) = 0
		[HideInInspector] _SpecularMask1UVAnimated ("", Float) = 0
		[HideInInspector] _SmoothnessFrom1Animated ("", Float) = 0
		[HideInInspector] _SpecWhatTangent1Animated ("", Float) = 0
		[HideInInspector] _AnisoSpec1Alpha1Animated ("", Float) = 0
		[HideInInspector] _AnisoSpec2Alpha1Animated ("", Float) = 0
		[HideInInspector] _Spec1Offset1Animated ("", Float) = 0
		[HideInInspector] _Spec2Smoothness1Animated ("", Float) = 0
		[HideInInspector] _AnisoUseTangentMap1Animated ("", Float) = 0
		[HideInInspector] _AnisoTangentMap1Animated ("", Float) = 0
		[HideInInspector] _AnisoTangentMap1PanAnimated ("", Float) = 0
		[HideInInspector] _AnisoTangentMap1UVAnimated ("", Float) = 0
		[HideInInspector] _SpecularToonStart1Animated ("", Float) = 0
		[HideInInspector] _SpecularToonEnd1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMirrored1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicro1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicroMultiplier1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicro1PanAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMicro1UVAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacro1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacroMultiplier1Animated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacro1PanAnimated ("", Float) = 0
		[HideInInspector] _SpecularAnisoJitterMacro1UVAnimated ("", Float) = 0
		[HideInInspector] _SpecularToonInnerOuter1Animated ("", Float) = 0
		[HideInInspector] _EnableEmissionAnimated ("", Float) = 0
		[HideInInspector] _EmissionReplaceAnimated ("", Float) = 0
		[HideInInspector] _EmissionColorAnimated ("", Float) = 0
		[HideInInspector] _EmissionMapAnimated ("", Float) = 0
		[HideInInspector] _EmissionBaseColorAsMapAnimated ("", Float) = 0
		[HideInInspector] _EmissionMapPanAnimated ("", Float) = 0
		[HideInInspector] _EmissionMapUVAnimated ("", Float) = 0
		[HideInInspector] _EmissionMaskAnimated ("", Float) = 0
		[HideInInspector] _EmissionMaskPanAnimated ("", Float) = 0
		[HideInInspector] _EmissionMaskUVAnimated ("", Float) = 0
		[HideInInspector] _EmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _EmissionHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _EmissionHueShiftAnimated ("", Float) = 0
		[HideInInspector] _EmissionCenterOutEnabledAnimated ("", Float) = 0
		[HideInInspector] _EmissionCenterOutSpeedAnimated ("", Float) = 0
		[HideInInspector] _EnableGITDEmissionAnimated ("", Float) = 0
		[HideInInspector] _GITDEWorldOrMeshAnimated ("", Float) = 0
		[HideInInspector] _GITDEMinEmissionMultiplierAnimated ("", Float) = 0
		[HideInInspector] _GITDEMaxEmissionMultiplierAnimated ("", Float) = 0
		[HideInInspector] _GITDEMinLightAnimated ("", Float) = 0
		[HideInInspector] _GITDEMaxLightAnimated ("", Float) = 0
		[HideInInspector] _EmissionBlinkingEnabledAnimated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_MinAnimated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_MaxAnimated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_VelocityAnimated ("", Float) = 0
		[HideInInspector] _EmissionBlinkingOffsetAnimated ("", Float) = 0
		[HideInInspector] _ScrollingEmissionAnimated ("", Float) = 0
		[HideInInspector] _EmissionScrollingUseCurveAnimated ("", Float) = 0
		[HideInInspector] _EmissionScrollingCurveAnimated ("", Float) = 0
		[HideInInspector] _EmissionScrollingVertexColorAnimated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_DirectionAnimated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_WidthAnimated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_VelocityAnimated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_IntervalAnimated ("", Float) = 0
		[HideInInspector] _EmissionScrollingOffsetAnimated ("", Float) = 0
		[HideInInspector] _EnableEmission1Animated ("", Float) = 0
		[HideInInspector] _EmissionColor1Animated ("", Float) = 0
		[HideInInspector] _EmissionMap1Animated ("", Float) = 0
		[HideInInspector] _EmissionBaseColorAsMap1Animated ("", Float) = 0
		[HideInInspector] _EmissionMap1PanAnimated ("", Float) = 0
		[HideInInspector] _EmissionMap1UVAnimated ("", Float) = 0
		[HideInInspector] _EmissionMask1Animated ("", Float) = 0
		[HideInInspector] _EmissionMask1PanAnimated ("", Float) = 0
		[HideInInspector] _EmissionMask1UVAnimated ("", Float) = 0
		[HideInInspector] _EmissionStrength1Animated ("", Float) = 0
		[HideInInspector] _EmissionHueShiftEnabled1Animated ("", Float) = 0
		[HideInInspector] _EmissionHueShift1Animated ("", Float) = 0
		[HideInInspector] _EmissionCenterOutEnabled1Animated ("", Float) = 0
		[HideInInspector] _EmissionCenterOutSpeed1Animated ("", Float) = 0
		[HideInInspector] _EnableGITDEmission1Animated ("", Float) = 0
		[HideInInspector] _GITDEWorldOrMesh1Animated ("", Float) = 0
		[HideInInspector] _GITDEMinEmissionMultiplier1Animated ("", Float) = 0
		[HideInInspector] _GITDEMaxEmissionMultiplier1Animated ("", Float) = 0
		[HideInInspector] _GITDEMinLight1Animated ("", Float) = 0
		[HideInInspector] _GITDEMaxLight1Animated ("", Float) = 0
		[HideInInspector] _EmissionBlinkingEnabledAnimated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_Min1Animated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_Max1Animated ("", Float) = 0
		[HideInInspector] _EmissiveBlink_Velocity1Animated ("", Float) = 0
		[HideInInspector] _EmissionBlinkingOffset1Animated ("", Float) = 0
		[HideInInspector] _ScrollingEmission1Animated ("", Float) = 0
		[HideInInspector] _EmissionScrollingUseCurve1Animated ("", Float) = 0
		[HideInInspector] _EmissionScrollingCurve1Animated ("", Float) = 0
		[HideInInspector] _EmissionScrollingVertexColor1Animated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_Direction1Animated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_Width1Animated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_Velocity1Animated ("", Float) = 0
		[HideInInspector] _EmissiveScroll_Interval1Animated ("", Float) = 0
		[HideInInspector] _EmissionScrollingOffset1Animated ("", Float) = 0
		[HideInInspector] _EnableFlipbookAnimated ("", Float) = 0
		[HideInInspector] _FlipbookAlphaControlsFinalAlphaAnimated ("", Float) = 0
		[HideInInspector] _FlipbookIntensityControlsAlphaAnimated ("", Float) = 0
		[HideInInspector] _FlipbookColorReplacesAnimated ("", Float) = 0
		[HideInInspector] _FlipbookTexArrayAnimated ("", Float) = 0
		[HideInInspector] _FlipbookTexArrayUVAnimated ("", Float) = 0
		[HideInInspector] _FlipbookTexArrayPanAnimated ("", Float) = 0
		[HideInInspector] _FlipbookMaskAnimated ("", Float) = 0
		[HideInInspector] _FlipbookMaskUVAnimated ("", Float) = 0
		[HideInInspector] _FlipbookMaskPanAnimated ("", Float) = 0
		[HideInInspector] _FlipbookColorAnimated ("", Float) = 0
		[HideInInspector] _FlipbookTotalFramesAnimated ("", Float) = 0
		[HideInInspector] _FlipbookFPSAnimated ("", Float) = 0
		[HideInInspector] _FlipbookScaleOffsetAnimated ("", Float) = 0
		[HideInInspector] _FlipbookTiledAnimated ("", Float) = 0
		[HideInInspector] _FlipbookEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _FlipbookRotationAnimated ("", Float) = 0
		[HideInInspector] _FlipbookRotationSpeedAnimated ("", Float) = 0
		[HideInInspector] _FlipbookReplaceAnimated ("", Float) = 0
		[HideInInspector] _FlipbookMultiplyAnimated ("", Float) = 0
		[HideInInspector] _FlipbookAddAnimated ("", Float) = 0
		[HideInInspector] _FlipbookCurrentFrameAnimated ("", Float) = 0
		[HideInInspector] _FlipbookCrossfadeEnabledAnimated ("", Float) = 0
		[HideInInspector] _FlipbookCrossfadeRangeAnimated ("", Float) = 0
		[HideInInspector] _FlipbookHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _FlipbookHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _FlipbookHueShiftAnimated ("", Float) = 0
		[HideInInspector] _EnableDissolveAnimated ("", Float) = 0
		[HideInInspector] _DissolveTypeAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeWidthAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeHardnessAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeColorAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeGradientAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeEmissionAnimated ("", Float) = 0
		[HideInInspector] _DissolveTextureColorAnimated ("", Float) = 0
		[HideInInspector] _DissolveToTextureAnimated ("", Float) = 0
		[HideInInspector] _DissolveToTexturePanAnimated ("", Float) = 0
		[HideInInspector] _DissolveToTextureUVAnimated ("", Float) = 0
		[HideInInspector] _DissolveToEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _DissolveNoiseTextureAnimated ("", Float) = 0
		[HideInInspector] _DissolveNoiseTexturePanAnimated ("", Float) = 0
		[HideInInspector] _DissolveNoiseTextureUVAnimated ("", Float) = 0
		[HideInInspector] _DissolveInvertNoiseAnimated ("", Float) = 0
		[HideInInspector] _DissolveDetailNoiseAnimated ("", Float) = 0
		[HideInInspector] _DissolveDetailNoisePanAnimated ("", Float) = 0
		[HideInInspector] _DissolveDetailNoiseUVAnimated ("", Float) = 0
		[HideInInspector] _DissolveInvertDetailNoiseAnimated ("", Float) = 0
		[HideInInspector] _DissolveDetailStrengthAnimated ("", Float) = 0
		[HideInInspector] _DissolveAlphaAnimated ("", Float) = 0
		[HideInInspector] _DissolveUseVertexColorsAnimated ("", Float) = 0
		[HideInInspector] _DissolveMaskAnimated ("", Float) = 0
		[HideInInspector] _DissolveMaskPanAnimated ("", Float) = 0
		[HideInInspector] _DissolveMaskUVAnimated ("", Float) = 0
		[HideInInspector] _DissolveMaskInvertAnimated ("", Float) = 0
		[HideInInspector] _ContinuousDissolveAnimated ("", Float) = 0
		[HideInInspector] _DissolveEmissionSideAnimated ("", Float) = 0
		[HideInInspector] _DissolveEmission1SideAnimated ("", Float) = 0
		[HideInInspector] _DissolveP2PWorldLocalAnimated ("", Float) = 0
		[HideInInspector] _DissolveP2PEdgeLengthAnimated ("", Float) = 0
		[HideInInspector] _DissolveStartPointAnimated ("", Float) = 0
		[HideInInspector] _DissolveEndPointAnimated ("", Float) = 0
		[HideInInspector] _DissolveHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _DissolveHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _DissolveHueShiftAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _DissolveEdgeHueShiftAnimated ("", Float) = 0
		[HideInInspector] _DissolveAlpha0Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha1Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha2Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha3Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha4Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha5Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha6Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha7Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha8Animated ("", Float) = 0
		[HideInInspector] _DissolveAlpha9Animated ("", Float) = 0
		[HideInInspector] _PanoToggleAnimated ("", Float) = 0
		[HideInInspector] _PanoInfiniteStereoToggleAnimated ("", Float) = 0
		[HideInInspector] _PanosphereColorAnimated ("", Float) = 0
		[HideInInspector] _PanosphereTextureAnimated ("", Float) = 0
		[HideInInspector] _PanoMaskAnimated ("", Float) = 0
		[HideInInspector] _PanoMaskPanAnimated ("", Float) = 0
		[HideInInspector] _PanoMaskUVAnimated ("", Float) = 0
		[HideInInspector] _PanoEmissionAnimated ("", Float) = 0
		[HideInInspector] _PanoBlendAnimated ("", Float) = 0
		[HideInInspector] _PanospherePanAnimated ("", Float) = 0
		[HideInInspector] _PanoCubeMapToggleAnimated ("", Float) = 0
		[HideInInspector] _PanoCubeMapAnimated ("", Float) = 0
		[HideInInspector] _GlitterEnableAnimated ("", Float) = 0
		[HideInInspector] _GlitterModeAnimated ("", Float) = 0
		[HideInInspector] _GlitterShapeAnimated ("", Float) = 0
		[HideInInspector] _GlitterBlendTypeAnimated ("", Float) = 0
		[HideInInspector] _GlitterColorAnimated ("", Float) = 0
		[HideInInspector] _GlitterUseSurfaceColorAnimated ("", Float) = 0
		[HideInInspector] _GlitterColorMapAnimated ("", Float) = 0
		[HideInInspector] _GlitterColorMapPanAnimated ("", Float) = 0
		[HideInInspector] _GlitterColorMapUVAnimated ("", Float) = 0
		[HideInInspector] _GlitterPanAnimated ("", Float) = 0
		[HideInInspector] _GlitterMaskAnimated ("", Float) = 0
		[HideInInspector] _GlitterMaskPanAnimated ("", Float) = 0
		[HideInInspector] _GlitterMaskUVAnimated ("", Float) = 0
		[HideInInspector] _GlitterTextureAnimated ("", Float) = 0
		[HideInInspector] _GlitterTexturePanAnimated ("", Float) = 0
		[HideInInspector] _GlitterRandomRotationAnimated ("", Float) = 0
		[HideInInspector] _GlitterFrequencyAnimated ("", Float) = 0
		[HideInInspector] _GlitterJitterAnimated ("", Float) = 0
		[HideInInspector] _GlitterSpeedAnimated ("", Float) = 0
		[HideInInspector] _GlitterSizeAnimated ("", Float) = 0
		[HideInInspector] _GlitterContrastAnimated ("", Float) = 0
		[HideInInspector] _GlitterAngleRangeAnimated ("", Float) = 0
		[HideInInspector] _GlitterMinBrightnessAnimated ("", Float) = 0
		[HideInInspector] _GlitterBrightnessAnimated ("", Float) = 0
		[HideInInspector] _GlitterBiasAnimated ("", Float) = 0
		[HideInInspector] _GlitterHideInShadowAnimated ("", Float) = 0
		[HideInInspector] _GlitterCenterSizeAnimated ("", Float) = 0
		[HideInInspector] _GlitterTextureRotationAnimated ("", Float) = 0
		[HideInInspector] _glitterFrequencyLinearEmissiveAnimated ("", Float) = 0
		[HideInInspector] _GlitterJaggyFixAnimated ("", Float) = 0
		[HideInInspector] _GlitterHueShiftEnabledAnimated ("", Float) = 0
		[HideInInspector] _GlitterHueShiftSpeedAnimated ("", Float) = 0
		[HideInInspector] _GlitterHueShiftAnimated ("", Float) = 0
		[HideInInspector] _GlitterRandomColorsAnimated ("", Float) = 0
		[HideInInspector] _GlitterMinMaxSaturationAnimated ("", Float) = 0
		[HideInInspector] _GlitterMinMaxBrightnessAnimated ("", Float) = 0
		[HideInInspector] _GlitterRandomSizeAnimated ("", Float) = 0
		[HideInInspector] _GlitterMinMaxSizeAnimated ("", Float) = 0
		[HideInInspector] _TextGlyphsAnimated ("", Float) = 0
		[HideInInspector] _TextPixelRangeAnimated ("", Float) = 0
		[HideInInspector] _TextEnabledAnimated ("", Float) = 0
		[HideInInspector] _TextFPSEnabledAnimated ("", Float) = 0
		[HideInInspector] _TextFPSUVAnimated ("", Float) = 0
		[HideInInspector] _TextFPSColorAnimated ("", Float) = 0
		[HideInInspector] _TextFPSEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _TextFPSOffsetAnimated ("", Float) = 0
		[HideInInspector] _TextFPSRotationAnimated ("", Float) = 0
		[HideInInspector] _TextFPSScaleAnimated ("", Float) = 0
		[HideInInspector] _TextFPSPaddingAnimated ("", Float) = 0
		[HideInInspector] _TextPositionEnabledAnimated ("", Float) = 0
		[HideInInspector] _TextPositionUVAnimated ("", Float) = 0
		[HideInInspector] _TextPositionColorAnimated ("", Float) = 0
		[HideInInspector] _TextPositionEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _TextPositionOffsetAnimated ("", Float) = 0
		[HideInInspector] _TextPositionRotationAnimated ("", Float) = 0
		[HideInInspector] _TextPositionScaleAnimated ("", Float) = 0
		[HideInInspector] _TextPositionPaddingAnimated ("", Float) = 0
		[HideInInspector] _TextTimeEnabledAnimated ("", Float) = 0
		[HideInInspector] _TextTimeUVAnimated ("", Float) = 0
		[HideInInspector] _TextTimeColorAnimated ("", Float) = 0
		[HideInInspector] _TextTimeEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _TextTimeOffsetAnimated ("", Float) = 0
		[HideInInspector] _TextTimeRotationAnimated ("", Float) = 0
		[HideInInspector] _TextTimeScaleAnimated ("", Float) = 0
		[HideInInspector] _TextTimePaddingAnimated ("", Float) = 0
		[HideInInspector] _EnableMirrorOptionsAnimated ("", Float) = 0
		[HideInInspector] _MirrorAnimated ("", Float) = 0
		[HideInInspector] _EnableMirrorTextureAnimated ("", Float) = 0
		[HideInInspector] _MirrorTextureAnimated ("", Float) = 0
		[HideInInspector] _MirrorTexturePanAnimated ("", Float) = 0
		[HideInInspector] _MirrorTextureUVAnimated ("", Float) = 0
		[HideInInspector] _MainMinAlphaAnimated ("", Float) = 0
		[HideInInspector] _MainFadeTextureAnimated ("", Float) = 0
		[HideInInspector] _MainFadeTexturePanAnimated ("", Float) = 0
		[HideInInspector] _MainFadeTextureUVAnimated ("", Float) = 0
		[HideInInspector] _MainDistanceFadeAnimated ("", Float) = 0
		[HideInInspector] _EnableRandomAnimated ("", Float) = 0
		[HideInInspector] _AngleTypeAnimated ("", Float) = 0
		[HideInInspector] _AngleCompareToAnimated ("", Float) = 0
		[HideInInspector] _AngleForwardDirectionAnimated ("", Float) = 0
		[HideInInspector] _CameraAngleMinAnimated ("", Float) = 0
		[HideInInspector] _CameraAngleMaxAnimated ("", Float) = 0
		[HideInInspector] _ModelAngleMinAnimated ("", Float) = 0
		[HideInInspector] _ModelAngleMaxAnimated ("", Float) = 0
		[HideInInspector] _AngleMinAlphaAnimated ("", Float) = 0
		[HideInInspector] _EnableDistortionAnimated ("", Float) = 0
		[HideInInspector] _DistortionMaskAnimated ("", Float) = 0
		[HideInInspector] _DistortionMaskPanAnimated ("", Float) = 0
		[HideInInspector] _DistortionMaskUVAnimated ("", Float) = 0
		[HideInInspector] _DistortionFlowTextureAnimated ("", Float) = 0
		[HideInInspector] _DistortionFlowTexture1Animated ("", Float) = 0
		[HideInInspector] _DistortionStrengthAnimated ("", Float) = 0
		[HideInInspector] _DistortionStrength1Animated ("", Float) = 0
		[HideInInspector] _DistortionSpeedAnimated ("", Float) = 0
		[HideInInspector] _DistortionSpeed1Animated ("", Float) = 0
		[HideInInspector] _EnableVideoAnimated ("", Float) = 0
		[HideInInspector] _VideoUVNumberAnimated ("", Float) = 0
		[HideInInspector] _VideoTypeAnimated ("", Float) = 0
		[HideInInspector] _VideoBacklightAnimated ("", Float) = 0
		[HideInInspector] _VideoPixelTextureAnimated ("", Float) = 0
		[HideInInspector] _VideoResolutionAnimated ("", Float) = 0
		[HideInInspector] _VideoMaskTextureAnimated ("", Float) = 0
		[HideInInspector] _VideoMaskPanningAnimated ("", Float) = 0
		[HideInInspector] _VideoEnableVideoPlayerAnimated ("", Float) = 0
		[HideInInspector] _VideoPixelateToResolutionAnimated ("", Float) = 0
		[HideInInspector] _VideoRepeatVideoTextureAnimated ("", Float) = 0
		[HideInInspector] _VideoPanningAnimated ("", Float) = 0
		[HideInInspector] _VideoTilingAnimated ("", Float) = 0
		[HideInInspector] _VideoOffsetAnimated ("", Float) = 0
		[HideInInspector] _VideoSaturationAnimated ("", Float) = 0
		[HideInInspector] _VideoContrastAnimated ("", Float) = 0
		[HideInInspector] _VideoEnableDebugAnimated ("", Float) = 0
		[HideInInspector] _VideoDebugTextureAnimated ("", Float) = 0
		[HideInInspector] _VideoCRTRefreshRateAnimated ("", Float) = 0
		[HideInInspector] _VideoCRTPixelEnergizedTimeAnimated ("", Float) = 0
		[HideInInspector] _VideoGameboyRampAnimated ("", Float) = 0
		[HideInInspector] _EnableBulgeAnimated ("", Float) = 0
		[HideInInspector] _BulgeMaskAnimated ("", Float) = 0
		[HideInInspector] _BuldgeFadeLengthAnimated ("", Float) = 0
		[HideInInspector] _BuldgeHeightAnimated ("", Float) = 0
		[HideInInspector] _EnableTouchGlowAnimated ("", Float) = 0
		[HideInInspector] _DepthGradientTextureUVAnimated ("", Float) = 0
		[HideInInspector] _DepthGradientBlendAnimated ("", Float) = 0
		[HideInInspector] _DepthGradientPanAnimated ("", Float) = 0
		[HideInInspector] _DepthGradientUVAnimated ("", Float) = 0
		[HideInInspector] _DepthMaskPanAnimated ("", Float) = 0
		[HideInInspector] _DepthMaskUVAnimated ("", Float) = 0
		[HideInInspector] _DepthGlowColorAnimated ("", Float) = 0
		[HideInInspector] _DepthGradientAnimated ("", Float) = 0
		[HideInInspector] _DepthMaskAnimated ("", Float) = 0
		[HideInInspector] _DepthGlowEmissionAnimated ("", Float) = 0
		[HideInInspector] _FadeLengthAnimated ("", Float) = 0
		[HideInInspector] _DepthAlphaMinAnimated ("", Float) = 0
		[HideInInspector] _DepthAlphaMaxAnimated ("", Float) = 0
		[HideInInspector] _EnableHoloAnimated ("", Float) = 0
		[HideInInspector] _HoloAlphaMapAnimated ("", Float) = 0
		[HideInInspector] _HoloCoordinateSpaceAnimated ("", Float) = 0
		[HideInInspector] _HoloDirectionAnimated ("", Float) = 0
		[HideInInspector] _HoloLineDensityAnimated ("", Float) = 0
		[HideInInspector] _HoloScrollSpeedAnimated ("", Float) = 0
		[HideInInspector] _HoloFresnelAlphaAnimated ("", Float) = 0
		[HideInInspector] _HoloRimSharpnessAnimated ("", Float) = 0
		[HideInInspector] _HoloRimWidthAnimated ("", Float) = 0
		[HideInInspector] _GrabPassUseAlphaAnimated ("", Float) = 0
		[HideInInspector] _GrabPassBlendFactorAnimated ("", Float) = 0
		[HideInInspector] _GrabSrcBlendAnimated ("", Float) = 0
		[HideInInspector] _GrabDstBlendAnimated ("", Float) = 0
		[HideInInspector] _RefractionEnabledAnimated ("", Float) = 0
		[HideInInspector] _RefractionIndexAnimated ("", Float) = 0
		[HideInInspector] _RefractionChromaticAberattionAnimated ("", Float) = 0
		[HideInInspector] _EnableBlurAnimated ("", Float) = 0
		[HideInInspector] _GrabBlurDistanceAnimated ("", Float) = 0
		[HideInInspector] _GrabBlurQualityAnimated ("", Float) = 0
		[HideInInspector] _GrabBlurDirectionsAnimated ("", Float) = 0
		[HideInInspector] _EnableIridescenceAnimated ("", Float) = 0
		[HideInInspector] _IridescenceRampAnimated ("", Float) = 0
		[HideInInspector] _IridescenceNormalToggleAnimated ("", Float) = 0
		[HideInInspector] _IridescenceNormalMapAnimated ("", Float) = 0
		[HideInInspector] _IridescenceMaskAnimated ("", Float) = 0
		[HideInInspector] _IridescenceNormalIntensityAnimated ("", Float) = 0
		[HideInInspector] _IridescenceNormalUVAnimated ("", Float) = 0
		[HideInInspector] _IridescenceMaskUVAnimated ("", Float) = 0
		[HideInInspector] _IridescenceNormalSelectionAnimated ("", Float) = 0
		[HideInInspector] _IridescenceIntensityAnimated ("", Float) = 0
		[HideInInspector] _IridescenceAddBlendAnimated ("", Float) = 0
		[HideInInspector] _IridescenceReplaceBlendAnimated ("", Float) = 0
		[HideInInspector] _IridescenceMultiplyBlendAnimated ("", Float) = 0
		[HideInInspector] _IridescenceEmissionStrengthAnimated ("", Float) = 0
		[HideInInspector] _IridescenceTimeAnimated ("", Float) = 0
		[HideInInspector] _EnableVertexGlitchAnimated ("", Float) = 0
		[HideInInspector] _VertexGlitchFrequencyAnimated ("", Float) = 0
		[HideInInspector] _VertexGlitchThresholdAnimated ("", Float) = 0
		[HideInInspector] _VertexGlitchStrengthAnimated ("", Float) = 0
		[HideInInspector] _EnableScifiSpawnInAnimated ("", Float) = 0
		[HideInInspector] _SpawnInNoiseAnimated ("", Float) = 0
		[HideInInspector] _SpawnInNoiseIntensityAnimated ("", Float) = 0
		[HideInInspector] _SpawnInAlphaAnimated ("", Float) = 0
		[HideInInspector] _SpawnInGradientStartAnimated ("", Float) = 0
		[HideInInspector] _SpawnInGradientFinishAnimated ("", Float) = 0
		[HideInInspector] _SpawnInEmissionColorAnimated ("", Float) = 0
		[HideInInspector] _SpawnInEmissionOffsetAnimated ("", Float) = 0
		[HideInInspector] _SpawnInVertOffsetAnimated ("", Float) = 0
		[HideInInspector] _SpawnInVertOffsetOffsetAnimated ("", Float) = 0
		[HideInInspector] _VoronoiTypeAnimated ("", Float) = 0
		[HideInInspector] _VoronoiSpaceAnimated ("", Float) = 0
		[HideInInspector] _VoronoiBlendAnimated ("", Float) = 0
		[HideInInspector] _EnableVoronoiAnimated ("", Float) = 0
		[HideInInspector] _VoronoiEffectsMaterialAlphaAnimated ("", Float) = 0
		[HideInInspector] _VoronoiMaskAnimated ("", Float) = 0
		[HideInInspector] _VoronoiMaskPanAnimated ("", Float) = 0
		[HideInInspector] _VoronoiMaskUVAnimated ("", Float) = 0
		[HideInInspector] _VoronoiNoiseAnimated ("", Float) = 0
		[HideInInspector] _VoronoiNoisePanAnimated ("", Float) = 0
		[HideInInspector] _VoronoiNoiseUVAnimated ("", Float) = 0
		[HideInInspector] _VoronoiNoiseIntensityAnimated ("", Float) = 0
		[HideInInspector] _VoronoiColor0Animated ("", Float) = 0
		[HideInInspector] _VoronoiEmission0Animated ("", Float) = 0
		[HideInInspector] _VoronoiColor1Animated ("", Float) = 0
		[HideInInspector] _VoronoiEmission1Animated ("", Float) = 0
		[HideInInspector] _VoronoiGradientAnimated ("", Float) = 0
		[HideInInspector] _VoronoiScaleAnimated ("", Float) = 0
		[HideInInspector] _VoronoiSpeedAnimated ("", Float) = 0
		[HideInInspector] _VoronoiEnableRandomCellColorAnimated ("", Float) = 0
		[HideInInspector] _VoronoiRandomMinMaxSaturationAnimated ("", Float) = 0
		[HideInInspector] _VoronoiRandomMinMaxBrightnessAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskEnabledAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskKeysAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskStartAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskEndAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskDebugAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskMetallicAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskClearCoatAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskMatcapAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskMatcap2Animated ("", Float) = 0
		[HideInInspector] _BlackLightMaskEmissionAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskEmission2Animated ("", Float) = 0
		[HideInInspector] _BlackLightMaskFlipbookAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskDissolveAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskPanosphereAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskGlitterAnimated ("", Float) = 0
		[HideInInspector] _BlackLightMaskIridescenceAnimated ("", Float) = 0
		[HideInInspector] _OutlineModeAnimated ("", Float) = 0
		[HideInInspector] _OutlineFixedSizeAnimated ("", Float) = 0
		[HideInInspector] _OutlineUseVertexColorsAnimated ("", Float) = 0
		[HideInInspector] _OutlineLitAnimated ("", Float) = 0
		[HideInInspector] _LineWidthAnimated ("", Float) = 0
		[HideInInspector] _LineColorAnimated ("", Float) = 0
		[HideInInspector] _OutlineTintMixAnimated ("", Float) = 0
		[HideInInspector] _OutlineEmissionAnimated ("", Float) = 0
		[HideInInspector] _OutlineTextureAnimated ("", Float) = 0
		[HideInInspector] _OutlineMaskAnimated ("", Float) = 0
		[HideInInspector] _OutlineTexturePanAnimated ("", Float) = 0
		[HideInInspector] _OutlineShadowStrengthAnimated ("", Float) = 0
		[HideInInspector] _OutlineRimLightBlendAnimated ("", Float) = 0
		[HideInInspector] _OutlinePersonaDirectionAnimated ("", Float) = 0
		[HideInInspector] _OutlineDropShadowOffsetAnimated ("", Float) = 0
		[HideInInspector] _OutlineFadeDistanceAnimated ("", Float) = 0
		[HideInInspector] _OutlineOffsetFactor ("", Float) = 0
		[HideInInspector] _OutlineOffsetUnits ("", Float) = 0
		[HideInInspector] _OutlineCullAnimated ("", Float) = 0
		[HideInInspector] _ParallaxMapAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapEnabledAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMapEnabledAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapPanAnimated ("", Float) = 0
		[HideInInspector] _ParallaxUVAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapMaskAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapMaskPanAnimated ("", Float) = 0
		[HideInInspector] _ParallaxHeightMapMaskUVAnimated ("", Float) = 0
		[HideInInspector] _ParallaxStrengthAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalHeightmapModeAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalHeightFromAlphaAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMapAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMapMaskAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMapMaskPanAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMapMaskUVAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalIterationsAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMinDepthAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMaxDepthAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMinFadeAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMaxFadeAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMinColorAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalMaxColorAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalPanSpeedAnimated ("", Float) = 0
		[HideInInspector] _ParallaxInternalPanDepthSpeedAnimated ("", Float) = 0
		[HideInInspector] _ParallaxBiasAnimated ("", Float) = 0
		[HideInInspector] _PenetratorEnabledAnimated ("", Float) = 0
		[HideInInspector] _squeezeAnimated ("", Float) = 0
		[HideInInspector] _SqueezeDistAnimated ("", Float) = 0
		[HideInInspector] _BulgeOffsetAnimated ("", Float) = 0
		[HideInInspector] _BulgePowerAnimated ("", Float) = 0
		[HideInInspector] _LengthAnimated ("", Float) = 0
		[HideInInspector] _EntranceStiffnessAnimated ("", Float) = 0
		[HideInInspector] _CurvatureAnimated ("", Float) = 0
		[HideInInspector] _ReCurvatureAnimated ("", Float) = 0
		[HideInInspector] _WriggleSpeedAnimated ("", Float) = 0
		[HideInInspector] _WriggleAnimated ("", Float) = 0
		[HideInInspector] _OrificeChannelAnimated ("", Float) = 0
		[HideInInspector] _CullAnimated ("", Float) = 0
		[HideInInspector] _ZTestAnimated ("", Float) = 0
		[HideInInspector] _ZWriteAnimated ("", Float) = 0
		[HideInInspector] _ColorMaskAnimated ("", Float) = 0
		[HideInInspector] _OffsetFactorAnimated ("", Float) = 0
		[HideInInspector] _OffsetUnitsAnimated ("", Float) = 0
		[HideInInspector] _IgnoreFogAnimated ("", Float) = 0
		[HideInInspector] _BlendOpAnimated ("", Float) = 0
		[HideInInspector] _BlendOpAlphaAnimated ("", Float) = 0
		[HideInInspector] _SrcBlendAnimated ("", Float) = 0
		[HideInInspector] _DstBlendAnimated ("", Float) = 0
		[HideInInspector] _StencilRefAnimated ("", Float) = 0
		[HideInInspector] _StencilReadMaskAnimated ("", Float) = 0
		[HideInInspector] _StencilWriteMaskAnimated ("", Float) = 0
		[HideInInspector] _StencilPassOpAnimated ("", Float) = 0
		[HideInInspector] _StencilFailOpAnimated ("", Float) = 0
		[HideInInspector] _StencilZFailOpAnimated ("", Float) = 0
		[HideInInspector] _StencilCompareFunctionAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilRefAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilReadMaskAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilWriteMaskAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilPassOpAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilFailOpAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilZFailOpAnimated ("", Float) = 0
		[HideInInspector] _OutlineStencilCompareFunctionAnimated ("", Float) = 0
		[HideInInspector] _VertexUnwrapAnimated ("", Range(0, 1)) = 0
		[HideInInspector] _DebugMeshDataAnimated ("", Float) = 0
		[HideInInspector] _DebugLightingDataAnimated ("", Float) = 0
		[HideInInspector] _DebugCameraDataAnimated ("", Float) = 0
	}
	SubShader {
		Tags { "QUEUE" = "Geometry+10" "RenderType" = "Opaque" }
		Pass {
			Name "MainPass"
			Tags { "LIGHTMODE" = "FORWARDBASE" "QUEUE" = "Geometry+10" "RenderType" = "Opaque" "SHADOWSUPPORT" = "true" }
			Blend Zero Zero, Zero Zero
			ColorMask 0 -1
			ZWrite Off
			Cull Off
			Stencil {
				ReadMask 0
				WriteMask 0
				Comp Disabled
				Pass Keep
				Fail Keep
				ZFail Keep
			}
			GpuProgramID 6894
			Program "vp" {
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out float vs_TEXCOORD17;
					layout(location = 6) out vec4 vs_TEXCOORD4;
					layout(location = 7) out vec4 vs_TEXCOORD5;
					layout(location = 8) out vec4 vs_TEXCOORD6;
					layout(location = 9) out vec4 vs_TEXCOORD7;
					layout(location = 10) out vec3 vs_TEXCOORD8;
					layout(location = 11) out vec3 vs_TEXCOORD11;
					layout(location = 12) out vec4 vs_TEXCOORD14;
					layout(location = 13) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD17 = u_xlat0.z;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_4[6];
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat12 = clamp(u_xlat12, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.y;
					    u_xlat12 = exp2((-u_xlat12));
					    u_xlat12 = min(u_xlat12, 1.0);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[66];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[39];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_4[6];
					};
					UNITY_BINDING(3) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  float vs_TEXCOORD17;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					float u_xlat8;
					float u_xlat9;
					float u_xlat12;
					float u_xlat13;
					float u_xlat14;
					void main()
					{
					    u_xlat0.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = inversesqrt(u_xlat12);
					    u_xlat4.z = sqrt(u_xlat12);
					    u_xlat0.xyz = u_xlat0.xyz * u_xlat1.xxx;
					    u_xlat1 = unity_SHAr + unity_SHAg;
					    u_xlat1 = u_xlat1 + unity_SHAb;
					    u_xlat13 = dot(u_xlat1, u_xlat1);
					    u_xlat13 = inversesqrt(u_xlat13);
					    u_xlat1.xyz = vec3(u_xlat13) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.x = u_xlat0.x * 0.5 + 0.5;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat0.x = log2(u_xlat0.x);
					    u_xlat4.x = u_xlat4.z + u_xlat4.z;
					    u_xlat4.xy = u_xlat4.xz / unity_SHAr.ww;
					    u_xlat4.xz = u_xlat4.xx + vec2(1.0, 2.0);
					    u_xlat0.x = u_xlat0.x * u_xlat4.x;
					    u_xlat0.x = exp2(u_xlat0.x);
					    u_xlat13 = (-u_xlat4.y) + 1.0;
					    u_xlat8 = u_xlat4.y + 1.0;
					    u_xlat8 = u_xlat13 / u_xlat8;
					    u_xlat13 = (-u_xlat8) + 1.0;
					    u_xlat12 = u_xlat4.z * u_xlat13;
					    u_xlat4.x = exp2((-u_xlat4.x));
					    u_xlat4.x = u_xlat12 * u_xlat4.x + u_xlat8;
					    u_xlat0.x = u_xlat12 * u_xlat0.x + u_xlat8;
					    u_xlat2.x = u_xlat0.x * unity_SHAr.w;
					    u_xlat0.x = u_xlat4.x * unity_SHAr.w;
					    u_xlat3.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat13 = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat13 = u_xlat13 * 0.5 + 0.5;
					    u_xlat13 = clamp(u_xlat13, 0.0, 1.0);
					    u_xlat13 = log2(u_xlat13);
					    u_xlat14 = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAg.w;
					    u_xlat14 = u_xlat14 / unity_SHAg.w;
					    u_xlat3.xy = vec2(u_xlat14) + vec2(1.0, 2.0);
					    u_xlat13 = u_xlat13 * u_xlat3.x;
					    u_xlat13 = exp2(u_xlat13);
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat14 / u_xlat12;
					    u_xlat14 = (-u_xlat12) + 1.0;
					    u_xlat14 = u_xlat3.y * u_xlat14;
					    u_xlat3.x = exp2((-u_xlat3.x));
					    u_xlat3.x = u_xlat14 * u_xlat3.x + u_xlat12;
					    u_xlat12 = u_xlat14 * u_xlat13 + u_xlat12;
					    u_xlat2.y = u_xlat12 * unity_SHAg.w;
					    u_xlat0.y = u_xlat3.x * unity_SHAg.w;
					    u_xlat3.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat13 = inversesqrt(u_xlat12);
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat13) * u_xlat3.xyz;
					    u_xlat1.x = dot(u_xlat3.xyz, u_xlat1.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat5.x = u_xlat12 + u_xlat12;
					    u_xlat12 = u_xlat12 / unity_SHAb.w;
					    u_xlat5.x = u_xlat5.x / unity_SHAb.w;
					    u_xlat5.xy = u_xlat5.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat5.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 + 1.0;
					    u_xlat12 = u_xlat13 / u_xlat12;
					    u_xlat13 = (-u_xlat12) + 1.0;
					    u_xlat9 = u_xlat5.y * u_xlat13;
					    u_xlat5.x = exp2((-u_xlat5.x));
					    u_xlat5.x = u_xlat9 * u_xlat5.x + u_xlat12;
					    u_xlat12 = u_xlat9 * u_xlat1.x + u_xlat12;
					    u_xlat2.z = u_xlat12 * unity_SHAb.w;
					    u_xlat1.xzw = max(u_xlat2.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.z = u_xlat5.x * unity_SHAb.w;
					    u_xlat0.xyz = max(u_xlat0.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat0.xyz = u_xlat0.xyz + _LightColor0.xyz;
					    u_xlat12 = dot(u_xlat1.xzw, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat5.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat12 + u_xlat5.x;
					    u_xlat12 = u_xlat12 / u_xlat2.x;
					    u_xlat5.x = u_xlat5.x / u_xlat2.x;
					    u_xlat2.xyz = u_xlat0.xyz * u_xlat5.xxx;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xzw;
					    u_xlat1.xyz = u_xlat1.xzw * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlat12 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat1.x = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = u_xlat12 / u_xlat1.x;
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat12 = max(u_xlat12, 9.99999975e-05);
					    u_xlat1.xyz = u_xlat0.xyz / vec3(u_xlat12);
					    u_xlat0.xyz = min(u_xlat0.xyz, u_xlat1.xyz);
					    u_xlat0.xyz = clamp(u_xlat0.xyz, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat5.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat5.xyz = clamp(u_xlat5.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat5.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat5.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat12 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat12 = (-u_xlat12) + 1.0;
					    u_xlat12 = u_xlat12 * _ProjectionParams.z;
					    u_xlat12 = max(u_xlat12, 0.0);
					    u_xlat12 = u_xlat12 * unity_FogParams.x;
					    u_xlat12 = u_xlat12 * (-u_xlat12);
					    u_xlat12 = exp2(u_xlat12);
					    SV_Target0.xyz = vec3(u_xlat12) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 unused_1_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_1_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_1_10[6];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    SV_Target0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_LINEAR" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.z + unity_FogParams.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.y;
					    u_xlat15 = exp2((-u_xlat15));
					    u_xlat15 = min(u_xlat15, 1.0);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[5];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "LIGHTPROBE_SH" "FOG_EXP2" "VERTEXLIGHT_ON" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						vec4 _MainTex_ST;
						vec4 unused_0_4[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_6[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec4 _ProjectionParams;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 unused_2_0[3];
						vec4 unity_4LightPosX0;
						vec4 unity_4LightPosY0;
						vec4 unity_4LightPosZ0;
						vec4 unity_4LightAtten0;
						vec4 unity_LightColor[8];
						vec4 unused_2_6[31];
						vec4 unity_SHAr;
						vec4 unity_SHAg;
						vec4 unity_SHAb;
						vec4 unused_2_10[6];
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityFog {
						vec4 unity_FogColor;
						vec4 unity_FogParams;
					};
					UNITY_LOCATION(0) uniform  sampler2D _MainTex;
					UNITY_LOCATION(1) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  float vs_TEXCOORD17;
					layout(location = 3) in  vec4 vs_TEXCOORD4;
					layout(location = 4) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					vec3 u_xlat7;
					float u_xlat11;
					float u_xlat12;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					float u_xlat17;
					float u_xlat18;
					void main()
					{
					    u_xlat0.x = unity_4LightPosX0.x;
					    u_xlat0.y = unity_4LightPosY0.x;
					    u_xlat0.z = unity_4LightPosZ0.x;
					    u_xlat0.xyz = u_xlat0.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat0.xyz = vec3(u_xlat15) * u_xlat0.xyz;
					    u_xlat1.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat1.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat1.xyz);
					    u_xlat15 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlatb15 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat15);
					    u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat2.xyz = texture(_BumpMap, u_xlat2.xy).xyw;
					    u_xlat2.x = u_xlat2.z * u_xlat2.x;
					    u_xlat2.xy = u_xlat2.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat1.xyz = u_xlat1.xyz * u_xlat2.yyy;
					    u_xlat3.xyz = (bool(u_xlatb15)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat1.xyz = u_xlat2.xxx * u_xlat3.xyz + u_xlat1.xyz;
					    u_xlat16 = dot(u_xlat2.xy, u_xlat2.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat2.x = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat2.x = inversesqrt(u_xlat2.x);
					    u_xlat2.xyz = u_xlat2.xxx * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = (bool(u_xlatb15)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat0.x = dot(u_xlat1.xyz, (-u_xlat0.xyz));
					    u_xlat0.x = u_xlat0.x + 1.0;
					    u_xlat0.x = clamp(u_xlat0.x, 0.0, 1.0);
					    u_xlat5.x = u_xlat0.x * -2.0 + 3.0;
					    u_xlat0.x = u_xlat0.x * u_xlat0.x;
					    u_xlat0.x = u_xlat0.x * u_xlat5.x;
					    u_xlat5.xyz = unity_LightColor[0].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2 = (-vs_TEXCOORD5.yyyy) + unity_4LightPosY0;
					    u_xlat2 = u_xlat2 * u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.xxxx) + unity_4LightPosX0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = (-vs_TEXCOORD5.zzzz) + unity_4LightPosZ0;
					    u_xlat2 = u_xlat3 * u_xlat3 + u_xlat2;
					    u_xlat3 = u_xlat2 * unity_4LightAtten0;
					    u_xlat2 = u_xlat2 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat2 = vec4(1.0, 1.0, 1.0, 1.0) / u_xlat2;
					    u_xlat3 = (-u_xlat3) * vec4(0.0399999991, 0.0399999991, 0.0399999991, 0.0399999991) + vec4(1.0, 1.0, 1.0, 1.0);
					    u_xlat3 = clamp(u_xlat3, 0.0, 1.0);
					    u_xlat3 = u_xlat3 * u_xlat3;
					    u_xlat2 = min(u_xlat2, u_xlat3);
					    u_xlat3.xyz = u_xlat2.xxx * unity_LightColor[0].xyz;
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat2.xxx + (-u_xlat3.xyz);
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.y;
					    u_xlat3.y = unity_4LightPosY0.y;
					    u_xlat3.z = unity_4LightPosZ0.y;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.yyy * unity_LightColor[1].xyz;
					    u_xlat4.xyz = unity_LightColor[1].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat4.xyz = u_xlat4.xyz * u_xlat2.yyy + (-u_xlat3.xyz);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat4.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat3.xyz;
					    u_xlat3.x = unity_4LightPosX0.z;
					    u_xlat3.y = unity_4LightPosY0.z;
					    u_xlat3.z = unity_4LightPosZ0.z;
					    u_xlat3.xyz = u_xlat3.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat3.xyz = vec3(u_xlat15) * u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat3.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat16 = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat16;
					    u_xlat3.xyz = u_xlat2.zzz * unity_LightColor[2].xyz;
					    u_xlat4.xyz = unity_LightColor[2].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat4.xyz * u_xlat2.zzz + (-u_xlat3.xyz);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat3.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat2.x = unity_4LightPosX0.w;
					    u_xlat2.y = unity_4LightPosY0.w;
					    u_xlat2.z = unity_4LightPosZ0.w;
					    u_xlat2.xyz = u_xlat2.xyz + (-vs_TEXCOORD5.xyz);
					    u_xlat15 = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat15 = inversesqrt(u_xlat15);
					    u_xlat2.xyz = vec3(u_xlat15) * u_xlat2.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, (-u_xlat2.xyz));
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = u_xlat15 * -2.0 + 3.0;
					    u_xlat15 = u_xlat15 * u_xlat15;
					    u_xlat15 = u_xlat15 * u_xlat1.x;
					    u_xlat1.xyz = u_xlat2.www * unity_LightColor[3].xyz;
					    u_xlat2.xyz = unity_LightColor[3].xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat2.www + (-u_xlat1.xyz);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat2.xyz + u_xlat1.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xyz = unity_SHAr.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat1.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat2 = unity_SHAr + unity_SHAg;
					    u_xlat2 = u_xlat2 + unity_SHAb;
					    u_xlat16 = dot(u_xlat2, u_xlat2);
					    u_xlat16 = inversesqrt(u_xlat16);
					    u_xlat2.xyz = vec3(u_xlat16) * u_xlat2.xyz;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.x = u_xlat1.x * 0.5 + 0.5;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat1.x = log2(u_xlat1.x);
					    u_xlat6.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAr.w;
					    u_xlat6.x = u_xlat6.x / unity_SHAr.w;
					    u_xlat6.xy = u_xlat6.xx + vec2(1.0, 2.0);
					    u_xlat1.x = u_xlat1.x * u_xlat6.x;
					    u_xlat1.x = exp2(u_xlat1.x);
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat16 / u_xlat15;
					    u_xlat16 = (-u_xlat15) + 1.0;
					    u_xlat11 = u_xlat6.y * u_xlat16;
					    u_xlat6.x = exp2((-u_xlat6.x));
					    u_xlat6.x = u_xlat11 * u_xlat6.x + u_xlat15;
					    u_xlat15 = u_xlat11 * u_xlat1.x + u_xlat15;
					    u_xlat3.x = u_xlat15 * unity_SHAr.w;
					    u_xlat1.x = u_xlat6.x * unity_SHAr.w;
					    u_xlat4.xyz = unity_SHAg.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat17 = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAg.w;
					    u_xlat17 = u_xlat17 / unity_SHAg.w;
					    u_xlat4.xy = vec2(u_xlat17) + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat4.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat17 / u_xlat15;
					    u_xlat17 = (-u_xlat15) + 1.0;
					    u_xlat17 = u_xlat4.y * u_xlat17;
					    u_xlat18 = exp2((-u_xlat4.x));
					    u_xlat18 = u_xlat17 * u_xlat18 + u_xlat15;
					    u_xlat15 = u_xlat17 * u_xlat16 + u_xlat15;
					    u_xlat3.y = u_xlat15 * unity_SHAg.w;
					    u_xlat1.y = u_xlat18 * unity_SHAg.w;
					    u_xlat4.xyz = unity_SHAb.xyz * vec3(0.5, 0.5, 0.5);
					    u_xlat15 = dot(u_xlat4.xyz, u_xlat4.xyz);
					    u_xlat16 = inversesqrt(u_xlat15);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat4.xyz = vec3(u_xlat16) * u_xlat4.xyz;
					    u_xlat16 = dot(u_xlat4.xyz, u_xlat2.xyz);
					    u_xlat16 = u_xlat16 * 0.5 + 0.5;
					    u_xlat16 = clamp(u_xlat16, 0.0, 1.0);
					    u_xlat16 = log2(u_xlat16);
					    u_xlat2.x = u_xlat15 + u_xlat15;
					    u_xlat15 = u_xlat15 / unity_SHAb.w;
					    u_xlat2.x = u_xlat2.x / unity_SHAb.w;
					    u_xlat2.xy = u_xlat2.xx + vec2(1.0, 2.0);
					    u_xlat16 = u_xlat16 * u_xlat2.x;
					    u_xlat16 = exp2(u_xlat16);
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 + 1.0;
					    u_xlat15 = u_xlat12 / u_xlat15;
					    u_xlat12 = (-u_xlat15) + 1.0;
					    u_xlat7.x = u_xlat2.y * u_xlat12;
					    u_xlat2.x = exp2((-u_xlat2.x));
					    u_xlat2.x = u_xlat7.x * u_xlat2.x + u_xlat15;
					    u_xlat15 = u_xlat7.x * u_xlat16 + u_xlat15;
					    u_xlat3.z = u_xlat15 * unity_SHAb.w;
					    u_xlat7.xyz = max(u_xlat3.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.z = u_xlat2.x * unity_SHAb.w;
					    u_xlat1.xyz = max(u_xlat1.xyz, vec3(0.0, 0.0, 0.0));
					    u_xlat1.xyz = u_xlat1.xyz + _LightColor0.xyz;
					    u_xlat15 = dot(u_xlat7.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat2.x = u_xlat15 + u_xlat16;
					    u_xlat15 = u_xlat15 / u_xlat2.x;
					    u_xlat16 = u_xlat16 / u_xlat2.x;
					    u_xlat3.xyz = vec3(u_xlat16) * u_xlat1.xyz;
					    u_xlat1.xyz = u_xlat1.xyz + u_xlat7.xyz;
					    u_xlat2.xyz = u_xlat7.xyz * vec3(u_xlat15) + u_xlat3.xyz;
					    u_xlat15 = dot(u_xlat2.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat16 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = u_xlat15 / u_xlat16;
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat1.xyz = vec3(u_xlat15) * u_xlat1.xyz;
					    u_xlat15 = dot(u_xlat1.xyz, vec3(0.298999995, 0.587000012, 0.114));
					    u_xlat15 = max(u_xlat15, 9.99999975e-05);
					    u_xlat2.xyz = u_xlat1.xyz / vec3(u_xlat15);
					    u_xlat1.xyz = min(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.xyz = u_xlat0.xyz + u_xlat1.xyz;
					    u_xlat1.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat1 = texture(_MainTex, u_xlat1.xy).wxyz;
					    u_xlat1.x = u_xlat1.x;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = u_xlat1.yzw * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat2.xyz = u_xlat1.xxx * u_xlat6.xyz;
					    u_xlat2.xyz = u_xlat2.xyz * vec3(0.230000004, 0.230000004, 0.230000004);
					    u_xlat0.xyz = u_xlat6.xyz * u_xlat0.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + (-unity_FogColor.xyz);
					    u_xlat15 = vs_TEXCOORD17 / _ProjectionParams.y;
					    u_xlat15 = (-u_xlat15) + 1.0;
					    u_xlat15 = u_xlat15 * _ProjectionParams.z;
					    u_xlat15 = max(u_xlat15, 0.0);
					    u_xlat15 = u_xlat15 * unity_FogParams.x;
					    u_xlat15 = u_xlat15 * (-u_xlat15);
					    u_xlat15 = exp2(u_xlat15);
					    SV_Target0.xyz = vec3(u_xlat15) * u_xlat0.xyz + unity_FogColor.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
			}
		}
		Pass {
			Name "ForwardAddPass"
			Tags { "LIGHTMODE" = "FORWARDADD" "QUEUE" = "Geometry+10" "RenderType" = "Opaque" "SHADOWSUPPORT" = "true" }
			Blend One One, One One
			ColorMask 0 -1
			ZWrite Off
			Cull Off
			Stencil {
				Comp Disabled
				Pass Keep
				Fail Keep
				ZFail Keep
			}
			GpuProgramID 73539
			Program "vp" {
				SubProgram "d3d11 " {
					Keywords { "POINT" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "SHADOWS_SOFT" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "SHADOWS_SCREEN" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[5];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityPerFrame {
						vec4 unused_2_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_2_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    vs_TEXCOORD7.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlat0.x = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat0.x * 0.5;
					    vs_TEXCOORD16.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerCamera {
						vec4 unused_0_0[4];
						vec4 _ProjectionParams;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_1_2[3];
					};
					UNITY_BINDING(2) uniform UnityStereoGlobals {
						vec4 unused_2_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_2_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_2_4;
					};
					UNITY_BINDING(3) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					float u_xlat3;
					vec2 u_xlat8;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xz = u_xlat0.xw * vec2(0.5, 0.5);
					    u_xlat2.xy = u_xlat0.xy * vec2(0.5, -0.5) + u_xlat1.zz;
					    u_xlati0 = unity_StereoEyeIndex;
					    u_xlat8.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati0].zw;
					    vs_TEXCOORD7.xy = u_xlat2.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    u_xlat3 = u_xlat0.y * _ProjectionParams.x;
					    u_xlat1.w = u_xlat3 * 0.5;
					    u_xlat1.xy = u_xlat1.zz + u_xlat1.xw;
					    vs_TEXCOORD16.xy = u_xlat1.xy * unity_StereoScaleOffset[u_xlati0].xy + u_xlat8.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD16.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "SHADOWS_SOFT" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "SHADOWS_SOFT" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityPerFrame {
						vec4 unused_1_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_1_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					vec4 u_xlat1;
					float u_xlat7;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD2.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat7 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat7 = inversesqrt(u_xlat7);
					    vs_TEXCOORD4.xyz = vec3(u_xlat7) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD7.xy = u_xlat1.yy + u_xlat1.xz;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_0_2[3];
					};
					UNITY_BINDING(1) uniform UnityStereoGlobals {
						vec4 unused_1_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_1_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_1_4;
					};
					UNITY_BINDING(2) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_TANGENT0;
					layout(location = 3) in  vec4 in_COLOR0;
					layout(location = 4) in  vec2 in_TEXCOORD0;
					layout(location = 5) in  vec2 in_TEXCOORD1;
					layout(location = 6) in  vec2 in_TEXCOORD2;
					layout(location = 7) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec4 vs_TEXCOORD0;
					layout(location = 1) out vec4 vs_TEXCOORD1;
					layout(location = 2) out vec3 vs_TEXCOORD2;
					layout(location = 3) out float vs_TEXCOORD12;
					layout(location = 4) out vec3 vs_TEXCOORD3;
					layout(location = 5) out vec4 vs_TEXCOORD4;
					layout(location = 6) out vec4 vs_TEXCOORD5;
					layout(location = 7) out vec4 vs_TEXCOORD6;
					layout(location = 8) out vec4 vs_TEXCOORD7;
					layout(location = 9) out vec3 vs_TEXCOORD8;
					layout(location = 10) out vec3 vs_TEXCOORD11;
					layout(location = 11) out vec4 vs_TEXCOORD14;
					layout(location = 12) out vec4 vs_TEXCOORD16;
					vec4 u_xlat0;
					int u_xlati0;
					vec4 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec2 u_xlat4;
					float u_xlat10;
					void main()
					{
					    u_xlat0 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat0 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
					    u_xlat0 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
					    u_xlat1 = u_xlat0 + unity_ObjectToWorld[3];
					    vs_TEXCOORD5 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat0;
					    u_xlati0 = unity_StereoEyeIndex << 2;
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati0 + 1) / 4][(u_xlati0 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati0 / 4][u_xlati0 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati0 + 2) / 4][(u_xlati0 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati0 + 3) / 4][(u_xlati0 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    gl_Position = u_xlat0;
					    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD0.zw = in_TEXCOORD1.xy;
					    vs_TEXCOORD1.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD1.zw = in_TEXCOORD3.xy;
					    u_xlat1.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat1.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat1.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD2.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD12 = 1.0;
					    vs_TEXCOORD3.xyz = vec3(0.0, 0.0, 0.0);
					    u_xlat1.xyz = in_TANGENT0.yyy * unity_ObjectToWorld[1].xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[0].xyz * in_TANGENT0.xxx + u_xlat1.xyz;
					    u_xlat1.xyz = unity_ObjectToWorld[2].xyz * in_TANGENT0.zzz + u_xlat1.xyz;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    vs_TEXCOORD4.xyz = vec3(u_xlat10) * u_xlat1.xyz;
					    vs_TEXCOORD4.w = in_TANGENT0.w;
					    vs_TEXCOORD6 = in_POSITION0;
					    u_xlat1.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat1.yy + u_xlat1.xz;
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat4.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati1].zw;
					    vs_TEXCOORD7.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati1].xy + u_xlat4.xy;
					    vs_TEXCOORD7.zw = u_xlat0.zw;
					    vs_TEXCOORD8.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD14 = in_COLOR0;
					    vs_TEXCOORD16 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					Keywords { "POINT" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  sampler2D _MainTex;
					UNITY_LOCATION(3) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					float u_xlat12;
					float u_xlat18;
					bool u_xlatb18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlatb18 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb18){
					        u_xlatb18 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb18)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat18 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat7 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat18, u_xlat7);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat18 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  sampler2D _MainTex;
					UNITY_LOCATION(3) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat7;
					float u_xlat12;
					float u_xlat18;
					bool u_xlatb18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlatb18 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb18){
					        u_xlatb18 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb18)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat18 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat7 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat18, u_xlat7);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat18 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat10;
					vec2 u_xlat11;
					float u_xlat15;
					float u_xlat17;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = 0.0<u_xlat0.z;
					    u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					    u_xlat11.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat11.xy = u_xlat11.xy + vec2(0.5, 0.5);
					    u_xlat15 = texture(_LightTexture0, u_xlat11.xy).w;
					    u_xlat15 = u_xlat15 * u_xlat6.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat15;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat6.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat6.xyz = (bool(u_xlatb5)) ? u_xlat6.xyz : (-u_xlat6.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat17 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat17 = min(u_xlat17, 1.0);
					    u_xlat17 = (-u_xlat17) + 1.0;
					    u_xlat17 = sqrt(u_xlat17);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat17) * u_xlat6.xyz + u_xlat5.xyz;
					    u_xlat6.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat6.xxx;
					    u_xlat6.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat17 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat17 = inversesqrt(u_xlat17);
					    u_xlat6.xyz = u_xlat6.xyz * vec3(u_xlat17);
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat6.xyz);
					    u_xlat6.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat10 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat10) * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat10 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat10;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat5.xyz = u_xlat5.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat6.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat10;
					vec2 u_xlat11;
					float u_xlat15;
					float u_xlat17;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = 0.0<u_xlat0.z;
					    u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					    u_xlat11.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat11.xy = u_xlat11.xy + vec2(0.5, 0.5);
					    u_xlat15 = texture(_LightTexture0, u_xlat11.xy).w;
					    u_xlat15 = u_xlat15 * u_xlat6.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat15;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat6.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat6.xyz = (bool(u_xlatb5)) ? u_xlat6.xyz : (-u_xlat6.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat17 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat17 = min(u_xlat17, 1.0);
					    u_xlat17 = (-u_xlat17) + 1.0;
					    u_xlat17 = sqrt(u_xlat17);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat17) * u_xlat6.xyz + u_xlat5.xyz;
					    u_xlat6.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat6.xxx;
					    u_xlat6.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat17 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat17 = inversesqrt(u_xlat17);
					    u_xlat6.xyz = u_xlat6.xyz * vec3(u_xlat17);
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat6.xyz);
					    u_xlat6.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat10 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat10) * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat10 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat10;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat5.xyz = u_xlat5.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat6.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat6;
					float u_xlat10;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlatb15 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb15){
					        u_xlatb15 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat15 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat6 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat6);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat15 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat6;
					float u_xlat10;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlatb15 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb15){
					        u_xlatb15 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat15 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat6 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat6);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat15 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  sampler2D _MainTex;
					UNITY_LOCATION(3) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat10;
					bool u_xlatb10;
					float u_xlat15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD5.yy * unity_WorldToLight[1].xy;
					    u_xlat0.xy = unity_WorldToLight[0].xy * vs_TEXCOORD5.xx + u_xlat0.xy;
					    u_xlat0.xy = unity_WorldToLight[2].xy * vs_TEXCOORD5.zz + u_xlat0.xy;
					    u_xlat0.xy = u_xlat0.xy + unity_WorldToLight[3].xy;
					    u_xlatb10 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb10){
					        u_xlatb10 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb10)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat10 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat15 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat10);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat10 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xy).w;
					    u_xlat0.x = u_xlat10 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						vec4 unused_2_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_2_2;
					};
					UNITY_BINDING(3) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  sampler2D _MainTex;
					UNITY_LOCATION(3) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat10;
					bool u_xlatb10;
					float u_xlat15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD5.yy * unity_WorldToLight[1].xy;
					    u_xlat0.xy = unity_WorldToLight[0].xy * vs_TEXCOORD5.xx + u_xlat0.xy;
					    u_xlat0.xy = unity_WorldToLight[2].xy * vs_TEXCOORD5.zz + u_xlat0.xy;
					    u_xlat0.xy = u_xlat0.xy + unity_WorldToLight[3].xy;
					    u_xlatb10 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb10){
					        u_xlatb10 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb10)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat10 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat15 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat10);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat10 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xy).w;
					    u_xlat0.x = u_xlat10 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_2_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_3;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[8];
						mat4x4 unity_WorldToShadow[4];
						vec4 unused_3_2[12];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2DShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec3 u_xlat1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat10;
					vec2 u_xlat11;
					float u_xlat15;
					float u_xlat16;
					float u_xlat17;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat6.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat6.x = sqrt(u_xlat6.x);
					    u_xlat6.x = (-u_xlat1.x) + u_xlat6.x;
					    u_xlat1.x = unity_ShadowFadeCenterAndType.w * u_xlat6.x + u_xlat1.x;
					    u_xlat1.x = u_xlat1.x * _LightShadowData.z + _LightShadowData.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb6){
					        u_xlatb6 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat2.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat2.xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat2.xyz;
					        u_xlat2.xyz = u_xlat2.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat6.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : vs_TEXCOORD5.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat2.yzw = u_xlat6.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat2.y * 0.25 + 0.75;
					        u_xlat11.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat2.x = max(u_xlat11.x, u_xlat6.x);
					        u_xlat2 = texture(unity_ProbeVolumeSH, u_xlat2.xzw);
					    } else {
					        u_xlat2.x = float(1.0);
					        u_xlat2.y = float(1.0);
					        u_xlat2.z = float(1.0);
					        u_xlat2.w = float(1.0);
					    }
					    u_xlat6.x = dot(u_xlat2, unity_OcclusionMaskSelector);
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat2 = vs_TEXCOORD5.yyyy * unity_WorldToShadow[1 / 4][1 % 4];
					    u_xlat2 = unity_WorldToShadow[0 / 4][0 % 4] * vs_TEXCOORD5.xxxx + u_xlat2;
					    u_xlat2 = unity_WorldToShadow[2 / 4][2 % 4] * vs_TEXCOORD5.zzzz + u_xlat2;
					    u_xlat2 = u_xlat2 + unity_WorldToShadow[3 / 4][3 % 4];
					    u_xlat2.xyz = u_xlat2.xyz / u_xlat2.www;
					    vec3 txVec0 = vec3(u_xlat2.xy,u_xlat2.z);
					    u_xlat11.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat16 = (-_LightShadowData.x) + 1.0;
					    u_xlat11.x = u_xlat11.x * u_xlat16 + _LightShadowData.x;
					    u_xlat6.x = (-u_xlat11.x) + u_xlat6.x;
					    u_xlat1.x = u_xlat1.x * u_xlat6.x + u_xlat11.x;
					    u_xlatb6 = 0.0<u_xlat0.z;
					    u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					    u_xlat11.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat11.xy = u_xlat11.xy + vec2(0.5, 0.5);
					    u_xlat15 = texture(_LightTexture0, u_xlat11.xy).w;
					    u_xlat15 = u_xlat15 * u_xlat6.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat15;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat6.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat6.xyz = (bool(u_xlatb5)) ? u_xlat6.xyz : (-u_xlat6.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat17 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat17 = min(u_xlat17, 1.0);
					    u_xlat17 = (-u_xlat17) + 1.0;
					    u_xlat17 = sqrt(u_xlat17);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat17) * u_xlat6.xyz + u_xlat5.xyz;
					    u_xlat6.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat6.xxx;
					    u_xlat6.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat17 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat17 = inversesqrt(u_xlat17);
					    u_xlat6.xyz = u_xlat6.xyz * vec3(u_xlat17);
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat6.xyz);
					    u_xlat6.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat10 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat10) * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat10 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat10;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat5.xyz = u_xlat5.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat6.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[8];
						mat4x4 unity_WorldToShadow[4];
						vec4 unused_2_2[12];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2DShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec3 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					float u_xlat10;
					vec2 u_xlat11;
					float u_xlat15;
					float u_xlat16;
					int u_xlati16;
					float u_xlat17;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati1].xyz;
					    u_xlati16 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati16 / 4][u_xlati16 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati16 + 1) / 4][(u_xlati16 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati16 + 2) / 4][(u_xlati16 + 2) % 4].z;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat6.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat6.x = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat6.x = sqrt(u_xlat6.x);
					    u_xlat6.x = (-u_xlat1.x) + u_xlat6.x;
					    u_xlat1.x = unity_ShadowFadeCenterAndType.w * u_xlat6.x + u_xlat1.x;
					    u_xlat1.x = u_xlat1.x * _LightShadowData.z + _LightShadowData.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb6){
					        u_xlatb6 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat2.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat2.xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat2.xyz;
					        u_xlat2.xyz = u_xlat2.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat6.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : vs_TEXCOORD5.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat2.yzw = u_xlat6.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat2.y * 0.25 + 0.75;
					        u_xlat11.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat2.x = max(u_xlat11.x, u_xlat6.x);
					        u_xlat2 = texture(unity_ProbeVolumeSH, u_xlat2.xzw);
					    } else {
					        u_xlat2.x = float(1.0);
					        u_xlat2.y = float(1.0);
					        u_xlat2.z = float(1.0);
					        u_xlat2.w = float(1.0);
					    }
					    u_xlat6.x = dot(u_xlat2, unity_OcclusionMaskSelector);
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat2 = vs_TEXCOORD5.yyyy * unity_WorldToShadow[1 / 4][1 % 4];
					    u_xlat2 = unity_WorldToShadow[0 / 4][0 % 4] * vs_TEXCOORD5.xxxx + u_xlat2;
					    u_xlat2 = unity_WorldToShadow[2 / 4][2 % 4] * vs_TEXCOORD5.zzzz + u_xlat2;
					    u_xlat2 = u_xlat2 + unity_WorldToShadow[3 / 4][3 % 4];
					    u_xlat2.xyz = u_xlat2.xyz / u_xlat2.www;
					    vec3 txVec0 = vec3(u_xlat2.xy,u_xlat2.z);
					    u_xlat11.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat16 = (-_LightShadowData.x) + 1.0;
					    u_xlat11.x = u_xlat11.x * u_xlat16 + _LightShadowData.x;
					    u_xlat6.x = (-u_xlat11.x) + u_xlat6.x;
					    u_xlat1.x = u_xlat1.x * u_xlat6.x + u_xlat11.x;
					    u_xlatb6 = 0.0<u_xlat0.z;
					    u_xlat6.x = u_xlatb6 ? 1.0 : float(0.0);
					    u_xlat11.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat11.xy = u_xlat11.xy + vec2(0.5, 0.5);
					    u_xlat15 = texture(_LightTexture0, u_xlat11.xy).w;
					    u_xlat15 = u_xlat15 * u_xlat6.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat15;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat6.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat6.xyz = (bool(u_xlatb5)) ? u_xlat6.xyz : (-u_xlat6.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat17 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat17 = min(u_xlat17, 1.0);
					    u_xlat17 = (-u_xlat17) + 1.0;
					    u_xlat17 = sqrt(u_xlat17);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat17) * u_xlat6.xyz + u_xlat5.xyz;
					    u_xlat6.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat6.xxx;
					    u_xlat6.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat17 = dot(u_xlat6.xyz, u_xlat6.xyz);
					    u_xlat17 = inversesqrt(u_xlat17);
					    u_xlat6.xyz = u_xlat6.xyz * vec3(u_xlat17);
					    u_xlat5.x = dot(u_xlat5.xyz, u_xlat6.xyz);
					    u_xlat6.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat6.xyz = clamp(u_xlat6.xyz, 0.0, 1.0);
					    u_xlat10 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat10) * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat10 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat10;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat5.xyz = u_xlat5.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat5.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat6.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "SHADOWS_SOFT" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2[5];
						vec4 _ShadowMapTexture_TexelSize;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_6[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_8[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_2_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_3;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[8];
						mat4x4 unity_WorldToShadow[4];
						vec4 unused_3_2[12];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2DShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec3 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec4 u_xlat6;
					vec3 u_xlat7;
					bool u_xlatb7;
					vec3 u_xlat8;
					bool u_xlatb8;
					float u_xlat9;
					float u_xlat14;
					vec2 u_xlat15;
					bool u_xlatb15;
					vec2 u_xlat19;
					float u_xlat21;
					float u_xlat22;
					float u_xlat23;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat8.x = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat8.x = sqrt(u_xlat8.x);
					    u_xlat8.x = (-u_xlat1.x) + u_xlat8.x;
					    u_xlat1.x = unity_ShadowFadeCenterAndType.w * u_xlat8.x + u_xlat1.x;
					    u_xlat1.x = u_xlat1.x * _LightShadowData.z + _LightShadowData.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb8 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb8){
					        u_xlatb8 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat2.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat2.xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat2.xyz;
					        u_xlat2.xyz = u_xlat2.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat8.xyz = (bool(u_xlatb8)) ? u_xlat2.xyz : vs_TEXCOORD5.xyz;
					        u_xlat8.xyz = u_xlat8.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat2.yzw = u_xlat8.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat8.x = u_xlat2.y * 0.25 + 0.75;
					        u_xlat15.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat2.x = max(u_xlat15.x, u_xlat8.x);
					        u_xlat2 = texture(unity_ProbeVolumeSH, u_xlat2.xzw);
					    } else {
					        u_xlat2.x = float(1.0);
					        u_xlat2.y = float(1.0);
					        u_xlat2.z = float(1.0);
					        u_xlat2.w = float(1.0);
					    }
					    u_xlat8.x = dot(u_xlat2, unity_OcclusionMaskSelector);
					    u_xlat8.x = clamp(u_xlat8.x, 0.0, 1.0);
					    u_xlatb15 = u_xlat1.x<0.99000001;
					    if(u_xlatb15){
					        u_xlat2 = vs_TEXCOORD5.yyyy * unity_WorldToShadow[1 / 4][1 % 4];
					        u_xlat2 = unity_WorldToShadow[0 / 4][0 % 4] * vs_TEXCOORD5.xxxx + u_xlat2;
					        u_xlat2 = unity_WorldToShadow[2 / 4][2 % 4] * vs_TEXCOORD5.zzzz + u_xlat2;
					        u_xlat2 = u_xlat2 + unity_WorldToShadow[3 / 4][3 % 4];
					        u_xlat2.xyz = u_xlat2.xyz / u_xlat2.www;
					        u_xlat15.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.zw + vec2(0.5, 0.5);
					        u_xlat15.xy = floor(u_xlat15.xy);
					        u_xlat2.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.zw + (-u_xlat15.xy);
					        u_xlat3 = u_xlat2.xxyy + vec4(0.5, 1.0, 0.5, 1.0);
					        u_xlat4.xw = u_xlat3.xz * u_xlat3.xz;
					        u_xlat3.xz = u_xlat4.xw * vec2(0.5, 0.5) + (-u_xlat2.xy);
					        u_xlat5.xy = (-u_xlat2.xy) + vec2(1.0, 1.0);
					        u_xlat19.xy = min(u_xlat2.xy, vec2(0.0, 0.0));
					        u_xlat5.xy = (-u_xlat19.xy) * u_xlat19.xy + u_xlat5.xy;
					        u_xlat2.xy = max(u_xlat2.xy, vec2(0.0, 0.0));
					        u_xlat2.xy = (-u_xlat2.xy) * u_xlat2.xy + u_xlat3.yw;
					        u_xlat6.x = u_xlat3.x;
					        u_xlat6.y = u_xlat5.x;
					        u_xlat6.z = u_xlat2.x;
					        u_xlat6.w = u_xlat4.x;
					        u_xlat6 = u_xlat6 * vec4(0.444440007, 0.444440007, 0.444440007, 0.222220004);
					        u_xlat4.x = u_xlat3.z;
					        u_xlat4.y = u_xlat5.y;
					        u_xlat4.z = u_xlat2.y;
					        u_xlat3 = u_xlat4 * vec4(0.444440007, 0.444440007, 0.444440007, 0.222220004);
					        u_xlat4 = u_xlat6.ywyw + u_xlat6.xzxz;
					        u_xlat5 = u_xlat3.yyww + u_xlat3.xxzz;
					        u_xlat2.xy = u_xlat6.yw / u_xlat4.zw;
					        u_xlat2.xy = u_xlat2.xy + vec2(-1.5, 0.5);
					        u_xlat3.xy = u_xlat3.yw / u_xlat5.yw;
					        u_xlat3.xy = u_xlat3.xy + vec2(-1.5, 0.5);
					        u_xlat6.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.xx;
					        u_xlat6.zw = u_xlat3.xy * _ShadowMapTexture_TexelSize.yy;
					        u_xlat3 = u_xlat4 * u_xlat5;
					        u_xlat4 = u_xlat15.xyxy * _ShadowMapTexture_TexelSize.xyxy + u_xlat6.xzyz;
					        vec3 txVec0 = vec3(u_xlat4.xy,u_xlat2.z);
					        u_xlat2.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        vec3 txVec1 = vec3(u_xlat4.zw,u_xlat2.z);
					        u_xlat9 = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat9 = u_xlat9 * u_xlat3.y;
					        u_xlat2.x = u_xlat3.x * u_xlat2.x + u_xlat9;
					        u_xlat4 = u_xlat15.xyxy * _ShadowMapTexture_TexelSize.xyxy + u_xlat6.xwyw;
					        vec3 txVec2 = vec3(u_xlat4.xy,u_xlat2.z);
					        u_xlat15.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat15.x = u_xlat3.z * u_xlat15.x + u_xlat2.x;
					        vec3 txVec3 = vec3(u_xlat4.zw,u_xlat2.z);
					        u_xlat22 = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat15.x = u_xlat3.w * u_xlat22 + u_xlat15.x;
					        u_xlat22 = (-_LightShadowData.x) + 1.0;
					        u_xlat15.x = u_xlat15.x * u_xlat22 + _LightShadowData.x;
					    } else {
					        u_xlat15.x = 1.0;
					    }
					    u_xlat8.x = (-u_xlat15.x) + u_xlat8.x;
					    u_xlat1.x = u_xlat1.x * u_xlat8.x + u_xlat15.x;
					    u_xlatb8 = 0.0<u_xlat0.z;
					    u_xlat8.x = u_xlatb8 ? 1.0 : float(0.0);
					    u_xlat15.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat15.xy = u_xlat15.xy + vec2(0.5, 0.5);
					    u_xlat21 = texture(_LightTexture0, u_xlat15.xy).w;
					    u_xlat21 = u_xlat21 * u_xlat8.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat21;
					    u_xlat7.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat14 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat8.xyz = vec3(u_xlat14) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat14 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlatb7 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat7.x);
					    u_xlat8.xyz = (bool(u_xlatb7)) ? u_xlat8.xyz : (-u_xlat8.xyz);
					    u_xlat3.xyz = (bool(u_xlatb7)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat7.xyz = (bool(u_xlatb7)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat23 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat23 = min(u_xlat23, 1.0);
					    u_xlat23 = (-u_xlat23) + 1.0;
					    u_xlat23 = sqrt(u_xlat23);
					    u_xlat7.xyz = u_xlat7.xyz * u_xlat4.yyy;
					    u_xlat7.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat7.xyz;
					    u_xlat7.xyz = vec3(u_xlat23) * u_xlat8.xyz + u_xlat7.xyz;
					    u_xlat8.x = dot(u_xlat7.xyz, u_xlat7.xyz);
					    u_xlat8.x = inversesqrt(u_xlat8.x);
					    u_xlat7.xyz = u_xlat7.xyz * u_xlat8.xxx;
					    u_xlat8.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat23 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat23 = inversesqrt(u_xlat23);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat23);
					    u_xlat7.x = dot(u_xlat7.xyz, u_xlat8.xyz);
					    u_xlat8.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat8.xyz = clamp(u_xlat8.xyz, 0.0, 1.0);
					    u_xlat14 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat14) * _LightColor0.xyz;
					    u_xlat7.x = u_xlat7.x * 0.5 + 0.5;
					    u_xlat7.x = (-u_xlat7.x) + 1.0;
					    u_xlat7.x = u_xlat7.x + u_xlat7.x;
					    u_xlat7.x = clamp(u_xlat7.x, 0.0, 1.0);
					    u_xlat14 = u_xlat7.x * -2.0 + 3.0;
					    u_xlat7.x = u_xlat7.x * u_xlat7.x;
					    u_xlat7.x = u_xlat7.x * u_xlat14;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat7.xyz = u_xlat7.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat7.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat8.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "SPOT" "SHADOWS_DEPTH" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2[5];
						vec4 _ShadowMapTexture_TexelSize;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_6[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_8[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[8];
						mat4x4 unity_WorldToShadow[4];
						vec4 unused_2_2[12];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2DShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec3 u_xlat1;
					int u_xlati1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					vec4 u_xlat4;
					vec4 u_xlat5;
					vec4 u_xlat6;
					vec3 u_xlat7;
					bool u_xlatb7;
					vec3 u_xlat8;
					bool u_xlatb8;
					float u_xlat9;
					float u_xlat14;
					vec2 u_xlat15;
					bool u_xlatb15;
					vec2 u_xlat19;
					float u_xlat21;
					float u_xlat22;
					int u_xlati22;
					float u_xlat23;
					void main()
					{
					    u_xlat0 = vs_TEXCOORD5.yyyy * unity_WorldToLight[1];
					    u_xlat0 = unity_WorldToLight[0] * vs_TEXCOORD5.xxxx + u_xlat0;
					    u_xlat0 = unity_WorldToLight[2] * vs_TEXCOORD5.zzzz + u_xlat0;
					    u_xlat0 = u_xlat0 + unity_WorldToLight[3];
					    u_xlati1 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati1].xyz;
					    u_xlati22 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati22 / 4][u_xlati22 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati22 + 1) / 4][(u_xlati22 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati22 + 2) / 4][(u_xlati22 + 2) % 4].z;
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat8.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat8.x = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat8.x = sqrt(u_xlat8.x);
					    u_xlat8.x = (-u_xlat1.x) + u_xlat8.x;
					    u_xlat1.x = unity_ShadowFadeCenterAndType.w * u_xlat8.x + u_xlat1.x;
					    u_xlat1.x = u_xlat1.x * _LightShadowData.z + _LightShadowData.w;
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb8 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb8){
					        u_xlatb8 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat2.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat2.xyz;
					        u_xlat2.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat2.xyz;
					        u_xlat2.xyz = u_xlat2.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat8.xyz = (bool(u_xlatb8)) ? u_xlat2.xyz : vs_TEXCOORD5.xyz;
					        u_xlat8.xyz = u_xlat8.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat2.yzw = u_xlat8.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat8.x = u_xlat2.y * 0.25 + 0.75;
					        u_xlat15.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat2.x = max(u_xlat15.x, u_xlat8.x);
					        u_xlat2 = texture(unity_ProbeVolumeSH, u_xlat2.xzw);
					    } else {
					        u_xlat2.x = float(1.0);
					        u_xlat2.y = float(1.0);
					        u_xlat2.z = float(1.0);
					        u_xlat2.w = float(1.0);
					    }
					    u_xlat8.x = dot(u_xlat2, unity_OcclusionMaskSelector);
					    u_xlat8.x = clamp(u_xlat8.x, 0.0, 1.0);
					    u_xlatb15 = u_xlat1.x<0.99000001;
					    if(u_xlatb15){
					        u_xlat2 = vs_TEXCOORD5.yyyy * unity_WorldToShadow[1 / 4][1 % 4];
					        u_xlat2 = unity_WorldToShadow[0 / 4][0 % 4] * vs_TEXCOORD5.xxxx + u_xlat2;
					        u_xlat2 = unity_WorldToShadow[2 / 4][2 % 4] * vs_TEXCOORD5.zzzz + u_xlat2;
					        u_xlat2 = u_xlat2 + unity_WorldToShadow[3 / 4][3 % 4];
					        u_xlat2.xyz = u_xlat2.xyz / u_xlat2.www;
					        u_xlat15.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.zw + vec2(0.5, 0.5);
					        u_xlat15.xy = floor(u_xlat15.xy);
					        u_xlat2.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.zw + (-u_xlat15.xy);
					        u_xlat3 = u_xlat2.xxyy + vec4(0.5, 1.0, 0.5, 1.0);
					        u_xlat4.xw = u_xlat3.xz * u_xlat3.xz;
					        u_xlat3.xz = u_xlat4.xw * vec2(0.5, 0.5) + (-u_xlat2.xy);
					        u_xlat5.xy = (-u_xlat2.xy) + vec2(1.0, 1.0);
					        u_xlat19.xy = min(u_xlat2.xy, vec2(0.0, 0.0));
					        u_xlat5.xy = (-u_xlat19.xy) * u_xlat19.xy + u_xlat5.xy;
					        u_xlat2.xy = max(u_xlat2.xy, vec2(0.0, 0.0));
					        u_xlat2.xy = (-u_xlat2.xy) * u_xlat2.xy + u_xlat3.yw;
					        u_xlat6.x = u_xlat3.x;
					        u_xlat6.y = u_xlat5.x;
					        u_xlat6.z = u_xlat2.x;
					        u_xlat6.w = u_xlat4.x;
					        u_xlat6 = u_xlat6 * vec4(0.444440007, 0.444440007, 0.444440007, 0.222220004);
					        u_xlat4.x = u_xlat3.z;
					        u_xlat4.y = u_xlat5.y;
					        u_xlat4.z = u_xlat2.y;
					        u_xlat3 = u_xlat4 * vec4(0.444440007, 0.444440007, 0.444440007, 0.222220004);
					        u_xlat4 = u_xlat6.ywyw + u_xlat6.xzxz;
					        u_xlat5 = u_xlat3.yyww + u_xlat3.xxzz;
					        u_xlat2.xy = u_xlat6.yw / u_xlat4.zw;
					        u_xlat2.xy = u_xlat2.xy + vec2(-1.5, 0.5);
					        u_xlat3.xy = u_xlat3.yw / u_xlat5.yw;
					        u_xlat3.xy = u_xlat3.xy + vec2(-1.5, 0.5);
					        u_xlat6.xy = u_xlat2.xy * _ShadowMapTexture_TexelSize.xx;
					        u_xlat6.zw = u_xlat3.xy * _ShadowMapTexture_TexelSize.yy;
					        u_xlat3 = u_xlat4 * u_xlat5;
					        u_xlat4 = u_xlat15.xyxy * _ShadowMapTexture_TexelSize.xyxy + u_xlat6.xzyz;
					        vec3 txVec0 = vec3(u_xlat4.xy,u_xlat2.z);
					        u_xlat2.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        vec3 txVec1 = vec3(u_xlat4.zw,u_xlat2.z);
					        u_xlat9 = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat9 = u_xlat9 * u_xlat3.y;
					        u_xlat2.x = u_xlat3.x * u_xlat2.x + u_xlat9;
					        u_xlat4 = u_xlat15.xyxy * _ShadowMapTexture_TexelSize.xyxy + u_xlat6.xwyw;
					        vec3 txVec2 = vec3(u_xlat4.xy,u_xlat2.z);
					        u_xlat15.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat15.x = u_xlat3.z * u_xlat15.x + u_xlat2.x;
					        vec3 txVec3 = vec3(u_xlat4.zw,u_xlat2.z);
					        u_xlat22 = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat15.x = u_xlat3.w * u_xlat22 + u_xlat15.x;
					        u_xlat22 = (-_LightShadowData.x) + 1.0;
					        u_xlat15.x = u_xlat15.x * u_xlat22 + _LightShadowData.x;
					    } else {
					        u_xlat15.x = 1.0;
					    }
					    u_xlat8.x = (-u_xlat15.x) + u_xlat8.x;
					    u_xlat1.x = u_xlat1.x * u_xlat8.x + u_xlat15.x;
					    u_xlatb8 = 0.0<u_xlat0.z;
					    u_xlat8.x = u_xlatb8 ? 1.0 : float(0.0);
					    u_xlat15.xy = u_xlat0.xy / u_xlat0.ww;
					    u_xlat15.xy = u_xlat15.xy + vec2(0.5, 0.5);
					    u_xlat21 = texture(_LightTexture0, u_xlat15.xy).w;
					    u_xlat21 = u_xlat21 * u_xlat8.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTextureB0, u_xlat0.xx).x;
					    u_xlat0.x = u_xlat0.x * u_xlat21;
					    u_xlat7.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat14 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat14 = inversesqrt(u_xlat14);
					    u_xlat8.xyz = vec3(u_xlat14) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat14 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat14) * u_xlat2.xyz;
					    u_xlatb7 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat7.x);
					    u_xlat8.xyz = (bool(u_xlatb7)) ? u_xlat8.xyz : (-u_xlat8.xyz);
					    u_xlat3.xyz = (bool(u_xlatb7)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat7.xyz = (bool(u_xlatb7)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat23 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat23 = min(u_xlat23, 1.0);
					    u_xlat23 = (-u_xlat23) + 1.0;
					    u_xlat23 = sqrt(u_xlat23);
					    u_xlat7.xyz = u_xlat7.xyz * u_xlat4.yyy;
					    u_xlat7.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat7.xyz;
					    u_xlat7.xyz = vec3(u_xlat23) * u_xlat8.xyz + u_xlat7.xyz;
					    u_xlat8.x = dot(u_xlat7.xyz, u_xlat7.xyz);
					    u_xlat8.x = inversesqrt(u_xlat8.x);
					    u_xlat7.xyz = u_xlat7.xyz * u_xlat8.xxx;
					    u_xlat8.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat23 = dot(u_xlat8.xyz, u_xlat8.xyz);
					    u_xlat23 = inversesqrt(u_xlat23);
					    u_xlat8.xyz = u_xlat8.xyz * vec3(u_xlat23);
					    u_xlat7.x = dot(u_xlat7.xyz, u_xlat8.xyz);
					    u_xlat8.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat8.xyz = clamp(u_xlat8.xyz, 0.0, 1.0);
					    u_xlat14 = max(u_xlat1.x, 0.5);
					    u_xlat2.xyz = vec3(u_xlat14) * _LightColor0.xyz;
					    u_xlat7.x = u_xlat7.x * 0.5 + 0.5;
					    u_xlat7.x = (-u_xlat7.x) + 1.0;
					    u_xlat7.x = u_xlat7.x + u_xlat7.x;
					    u_xlat7.x = clamp(u_xlat7.x, 0.0, 1.0);
					    u_xlat14 = u_xlat7.x * -2.0 + 3.0;
					    u_xlat7.x = u_xlat7.x * u_xlat7.x;
					    u_xlat7.x = u_xlat7.x * u_xlat14;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat7.xyz = u_xlat7.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat7.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat8.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "SHADOWS_SCREEN" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_2_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_3;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(1) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 4) in  vec4 vs_TEXCOORD16;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat6;
					float u_xlat10;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD5.yy * unity_WorldToLight[1].xy;
					    u_xlat0.xy = unity_WorldToLight[0].xy * vs_TEXCOORD5.xx + u_xlat0.xy;
					    u_xlat0.xy = unity_WorldToLight[2].xy * vs_TEXCOORD5.zz + u_xlat0.xy;
					    u_xlat0.xy = u_xlat0.xy + unity_WorldToLight[3].xy;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat15 = (-u_xlat10) + u_xlat15;
					    u_xlat10 = unity_ShadowFadeCenterAndType.w * u_xlat15 + u_xlat10;
					    u_xlat10 = u_xlat10 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlatb15 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb15){
					        u_xlatb15 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat15 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat6 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat6);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat15 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD16.xy / vs_TEXCOORD16.ww;
					    u_xlat1.x = texture(_ShadowMapTexture, u_xlat1.xy).x;
					    u_xlat15 = u_xlat15 + (-u_xlat1.x);
					    u_xlat10 = u_xlat10 * u_xlat15 + u_xlat1.x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xy).w;
					    u_xlat0.x = u_xlat10 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "DIRECTIONAL_COOKIE" "SHADOWS_SCREEN" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_1_1[45];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_3;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _ShadowMapTexture;
					UNITY_LOCATION(1) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  sampler2D _MainTex;
					UNITY_LOCATION(4) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 4) in  vec4 vs_TEXCOORD16;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					float u_xlat6;
					float u_xlat10;
					int u_xlati10;
					float u_xlat15;
					bool u_xlatb15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xy = vs_TEXCOORD5.yy * unity_WorldToLight[1].xy;
					    u_xlat0.xy = unity_WorldToLight[0].xy * vs_TEXCOORD5.xx + u_xlat0.xy;
					    u_xlat0.xy = unity_WorldToLight[2].xy * vs_TEXCOORD5.zz + u_xlat0.xy;
					    u_xlat0.xy = u_xlat0.xy + unity_WorldToLight[3].xy;
					    u_xlati10 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati10].xyz;
					    u_xlati10 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati10 / 4][u_xlati10 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati10 + 1) / 4][(u_xlati10 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati10 + 2) / 4][(u_xlati10 + 2) % 4].z;
					    u_xlat10 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat15 = sqrt(u_xlat15);
					    u_xlat15 = (-u_xlat10) + u_xlat15;
					    u_xlat10 = unity_ShadowFadeCenterAndType.w * u_xlat15 + u_xlat10;
					    u_xlat10 = u_xlat10 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat10 = clamp(u_xlat10, 0.0, 1.0);
					    u_xlatb15 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb15){
					        u_xlatb15 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat1.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat1.xyz;
					        u_xlat1.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat1.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb15)) ? u_xlat1.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat15 = u_xlat1.y * 0.25 + 0.75;
					        u_xlat6 = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat15, u_xlat6);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat15 = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlat1.xy = vs_TEXCOORD16.xy / vs_TEXCOORD16.ww;
					    u_xlat1.x = texture(_ShadowMapTexture, u_xlat1.xy).x;
					    u_xlat15 = u_xlat15 + (-u_xlat1.x);
					    u_xlat10 = u_xlat10 * u_xlat15 + u_xlat1.x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xy).w;
					    u_xlat0.x = u_xlat10 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_2_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_5;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(3) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2D _MainTex;
					UNITY_LOCATION(5) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					float u_xlat12;
					float u_xlat13;
					float u_xlat18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat18) + u_xlat1.x;
					    u_xlat18 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat18;
					    u_xlat18 = u_xlat18 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat7.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat7.xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat7.xyz;
					        u_xlat7.xyz = u_xlat7.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat7.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat7.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat7.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat7.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					    u_xlat2.x = max(abs(u_xlat7.y), abs(u_xlat7.x));
					    u_xlat2.x = max(abs(u_xlat7.z), u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					    u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					    u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					    u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					    u_xlat2.x = (-u_xlat2.x) + 1.0;
					    vec4 txVec0 = vec4(u_xlat7.xyz,u_xlat2.x);
					    u_xlat7.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat13 = (-_LightShadowData.x) + 1.0;
					    u_xlat7.x = u_xlat7.x * u_xlat13 + _LightShadowData.x;
					    u_xlat1.x = (-u_xlat7.x) + u_xlat1.x;
					    u_xlat18 = u_xlat18 * u_xlat1.x + u_xlat7.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_1_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_5;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(3) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2D _MainTex;
					UNITY_LOCATION(5) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					float u_xlat12;
					float u_xlat13;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlati18 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati18].xyz;
					    u_xlati18 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati18 / 4][u_xlati18 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati18 + 1) / 4][(u_xlati18 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati18 + 2) / 4][(u_xlati18 + 2) % 4].z;
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat18) + u_xlat1.x;
					    u_xlat18 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat18;
					    u_xlat18 = u_xlat18 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat7.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat7.xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat7.xyz;
					        u_xlat7.xyz = u_xlat7.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat7.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat7.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat7.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat7.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					    u_xlat2.x = max(abs(u_xlat7.y), abs(u_xlat7.x));
					    u_xlat2.x = max(abs(u_xlat7.z), u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					    u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					    u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					    u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					    u_xlat2.x = (-u_xlat2.x) + 1.0;
					    vec4 txVec0 = vec4(u_xlat7.xyz,u_xlat2.x);
					    u_xlat7.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat13 = (-_LightShadowData.x) + 1.0;
					    u_xlat7.x = u_xlat7.x * u_xlat13 + _LightShadowData.x;
					    u_xlat1.x = (-u_xlat7.x) + u_xlat1.x;
					    u_xlat18 = u_xlat18 * u_xlat1.x + u_xlat7.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "SHADOWS_SOFT" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_2_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_5;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(3) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2D _MainTex;
					UNITY_LOCATION(5) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					bool u_xlatb7;
					vec3 u_xlat8;
					float u_xlat12;
					float u_xlat13;
					float u_xlat18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat18) + u_xlat1.x;
					    u_xlat18 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat18;
					    u_xlat18 = u_xlat18 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat7.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat7.xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat7.xyz;
					        u_xlat7.xyz = u_xlat7.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat7.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat7.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat7.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb7 = u_xlat18<0.99000001;
					    if(u_xlatb7){
					        u_xlat7.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					        u_xlat2.x = max(abs(u_xlat7.y), abs(u_xlat7.x));
					        u_xlat2.x = max(abs(u_xlat7.z), u_xlat2.x);
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					        u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					        u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					        u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					        u_xlat2.x = (-u_xlat2.x) + 1.0;
					        u_xlat8.xyz = u_xlat7.xyz + vec3(0.0078125, 0.0078125, 0.0078125);
					        vec4 txVec0 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        u_xlat8.xyz = u_xlat7.xyz + vec3(-0.0078125, -0.0078125, 0.0078125);
					        vec4 txVec1 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.y = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat8.xyz = u_xlat7.xyz + vec3(-0.0078125, 0.0078125, -0.0078125);
					        vec4 txVec2 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.z = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat7.xyz = u_xlat7.xyz + vec3(0.0078125, -0.0078125, -0.0078125);
					        vec4 txVec3 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.w = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat7.x = dot(u_xlat3, vec4(0.25, 0.25, 0.25, 0.25));
					        u_xlat13 = (-_LightShadowData.x) + 1.0;
					        u_xlat7.x = u_xlat7.x * u_xlat13 + _LightShadowData.x;
					    } else {
					        u_xlat7.x = 1.0;
					    }
					    u_xlat1.x = (-u_xlat7.x) + u_xlat1.x;
					    u_xlat18 = u_xlat18 * u_xlat1.x + u_xlat7.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT" "SHADOWS_CUBE" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_1_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_5;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTexture0;
					UNITY_LOCATION(1) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(2) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(3) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(4) uniform  sampler2D _MainTex;
					UNITY_LOCATION(5) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec3 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					bool u_xlatb7;
					vec3 u_xlat8;
					float u_xlat12;
					float u_xlat13;
					float u_xlat18;
					int u_xlati18;
					float u_xlat19;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlati18 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati18].xyz;
					    u_xlati18 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati18 / 4][u_xlati18 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati18 + 1) / 4][(u_xlati18 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati18 + 2) / 4][(u_xlati18 + 2) % 4].z;
					    u_xlat18 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat18) + u_xlat1.x;
					    u_xlat18 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat18;
					    u_xlat18 = u_xlat18 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat18 = clamp(u_xlat18, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat7.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat7.xyz;
					        u_xlat7.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat7.xyz;
					        u_xlat7.xyz = u_xlat7.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat7.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat7.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat7.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb7 = u_xlat18<0.99000001;
					    if(u_xlatb7){
					        u_xlat7.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					        u_xlat2.x = max(abs(u_xlat7.y), abs(u_xlat7.x));
					        u_xlat2.x = max(abs(u_xlat7.z), u_xlat2.x);
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					        u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					        u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					        u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					        u_xlat2.x = (-u_xlat2.x) + 1.0;
					        u_xlat8.xyz = u_xlat7.xyz + vec3(0.0078125, 0.0078125, 0.0078125);
					        vec4 txVec0 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        u_xlat8.xyz = u_xlat7.xyz + vec3(-0.0078125, -0.0078125, 0.0078125);
					        vec4 txVec1 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.y = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat8.xyz = u_xlat7.xyz + vec3(-0.0078125, 0.0078125, -0.0078125);
					        vec4 txVec2 = vec4(u_xlat8.xyz,u_xlat2.x);
					        u_xlat3.z = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat7.xyz = u_xlat7.xyz + vec3(0.0078125, -0.0078125, -0.0078125);
					        vec4 txVec3 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.w = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat7.x = dot(u_xlat3, vec4(0.25, 0.25, 0.25, 0.25));
					        u_xlat13 = (-_LightShadowData.x) + 1.0;
					        u_xlat7.x = u_xlat7.x * u_xlat13 + _LightShadowData.x;
					    } else {
					        u_xlat7.x = 1.0;
					    }
					    u_xlat1.x = (-u_xlat7.x) + u_xlat1.x;
					    u_xlat18 = u_xlat18 * u_xlat1.x + u_xlat7.x;
					    u_xlat0.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xx).x;
					    u_xlat6.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat12 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat1.xyz = vec3(u_xlat12) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat12 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat12) * u_xlat2.xyz;
					    u_xlatb6 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat6.x);
					    u_xlat1.xyz = (bool(u_xlatb6)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb6)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat2.xyz = (bool(u_xlatb6)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat6.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat4.xyz = texture(_MainTex, u_xlat6.xy).xyz;
					    u_xlat6.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat5.xyz = texture(_BumpMap, u_xlat6.xy).xyw;
					    u_xlat5.x = u_xlat5.z * u_xlat5.x;
					    u_xlat6.xy = u_xlat5.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat19 = dot(u_xlat6.xy, u_xlat6.xy);
					    u_xlat19 = min(u_xlat19, 1.0);
					    u_xlat19 = (-u_xlat19) + 1.0;
					    u_xlat19 = sqrt(u_xlat19);
					    u_xlat2.xyz = u_xlat2.xyz * u_xlat6.yyy;
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat1.xyz = vec3(u_xlat19) * u_xlat1.xyz + u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat1.xyz = u_xlat6.xxx * u_xlat1.xyz;
					    u_xlat2.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceLightPos0.xyz;
					    u_xlat6.x = dot(u_xlat2.xyz, u_xlat2.xyz);
					    u_xlat6.x = inversesqrt(u_xlat6.x);
					    u_xlat2.xyz = u_xlat6.xxx * u_xlat2.xyz;
					    u_xlat6.x = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = u_xlat4.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat12 = max(u_xlat18, 0.5);
					    u_xlat2.xyz = vec3(u_xlat12) * _LightColor0.xyz;
					    u_xlat6.x = u_xlat6.x * 0.5 + 0.5;
					    u_xlat6.x = (-u_xlat6.x) + 1.0;
					    u_xlat6.x = u_xlat6.x + u_xlat6.x;
					    u_xlat6.x = clamp(u_xlat6.x, 0.0, 1.0);
					    u_xlat12 = u_xlat6.x * -2.0 + 3.0;
					    u_xlat6.x = u_xlat6.x * u_xlat6.x;
					    u_xlat6.x = u_xlat6.x * u_xlat12;
					    u_xlat3.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat2.xyz);
					    u_xlat6.xyz = u_xlat6.xxx * u_xlat3.xyz + u_xlat2.xyz;
					    u_xlat0.xyz = u_xlat0.xxx * u_xlat6.xyz;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_2_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_5;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					float u_xlat10;
					float u_xlat11;
					float u_xlat15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat15) + u_xlat1.x;
					    u_xlat15 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat15;
					    u_xlat15 = u_xlat15 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					    u_xlat2.x = max(abs(u_xlat6.y), abs(u_xlat6.x));
					    u_xlat2.x = max(abs(u_xlat6.z), u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					    u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					    u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					    u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					    u_xlat2.x = (-u_xlat2.x) + 1.0;
					    vec4 txVec0 = vec4(u_xlat6.xyz,u_xlat2.x);
					    u_xlat6.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat11 = (-_LightShadowData.x) + 1.0;
					    u_xlat6.x = u_xlat6.x * u_xlat11 + _LightShadowData.x;
					    u_xlat1.x = (-u_xlat6.x) + u_xlat1.x;
					    u_xlat15 = u_xlat15 * u_xlat1.x + u_xlat6.x;
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_1_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_5;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec3 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					float u_xlat10;
					float u_xlat11;
					float u_xlat15;
					int u_xlati15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlati15 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati15].xyz;
					    u_xlati15 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati15 / 4][u_xlati15 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].z;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat15) + u_xlat1.x;
					    u_xlat15 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat15;
					    u_xlat15 = u_xlat15 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlat6.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					    u_xlat2.x = max(abs(u_xlat6.y), abs(u_xlat6.x));
					    u_xlat2.x = max(abs(u_xlat6.z), u_xlat2.x);
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					    u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					    u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					    u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					    u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					    u_xlat2.x = (-u_xlat2.x) + 1.0;
					    vec4 txVec0 = vec4(u_xlat6.xyz,u_xlat2.x);
					    u_xlat6.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					    u_xlat11 = (-_LightShadowData.x) + 1.0;
					    u_xlat6.x = u_xlat6.x * u_xlat11 + _LightShadowData.x;
					    u_xlat1.x = (-u_xlat6.x) + u_xlat1.x;
					    u_xlat15 = u_xlat15 * u_xlat1.x + u_xlat6.x;
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "SHADOWS_SOFT" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityPerCamera {
						vec4 unused_1_0[4];
						vec3 _WorldSpaceCameraPos;
						vec4 unused_1_2[4];
					};
					UNITY_BINDING(2) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_2_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_2_5;
					};
					UNITY_BINDING(3) uniform UnityShadows {
						vec4 unused_3_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(4) uniform UnityPerDraw {
						vec4 unused_4_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_4_2;
					};
					UNITY_BINDING(5) uniform UnityPerFrame {
						vec4 unused_5_0[9];
						mat4x4 unity_MatrixV;
						vec4 unused_5_2[10];
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					float u_xlat10;
					float u_xlat11;
					float u_xlat15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + _WorldSpaceCameraPos.xyz;
					    u_xlat2.x = unity_MatrixV[0].z;
					    u_xlat2.y = unity_MatrixV[1].z;
					    u_xlat2.z = unity_MatrixV[2].z;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat15) + u_xlat1.x;
					    u_xlat15 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat15;
					    u_xlat15 = u_xlat15 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = u_xlat15<0.99000001;
					    if(u_xlatb6){
					        u_xlat6.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					        u_xlat2.x = max(abs(u_xlat6.y), abs(u_xlat6.x));
					        u_xlat2.x = max(abs(u_xlat6.z), u_xlat2.x);
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					        u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					        u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					        u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					        u_xlat2.x = (-u_xlat2.x) + 1.0;
					        u_xlat7.xyz = u_xlat6.xyz + vec3(0.0078125, 0.0078125, 0.0078125);
					        vec4 txVec0 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        u_xlat7.xyz = u_xlat6.xyz + vec3(-0.0078125, -0.0078125, 0.0078125);
					        vec4 txVec1 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.y = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat7.xyz = u_xlat6.xyz + vec3(-0.0078125, 0.0078125, -0.0078125);
					        vec4 txVec2 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.z = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat6.xyz = u_xlat6.xyz + vec3(0.0078125, -0.0078125, -0.0078125);
					        vec4 txVec3 = vec4(u_xlat6.xyz,u_xlat2.x);
					        u_xlat3.w = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat6.x = dot(u_xlat3, vec4(0.25, 0.25, 0.25, 0.25));
					        u_xlat11 = (-_LightShadowData.x) + 1.0;
					        u_xlat6.x = u_xlat6.x * u_xlat11 + _LightShadowData.x;
					    } else {
					        u_xlat6.x = 1.0;
					    }
					    u_xlat1.x = (-u_xlat6.x) + u_xlat1.x;
					    u_xlat15 = u_xlat15 * u_xlat1.x + u_xlat6.x;
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "POINT_COOKIE" "SHADOWS_CUBE" "SHADOWS_SOFT" "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform PGlobals {
						vec4 unused_0_0[3];
						vec4 _LightColor0;
						vec4 unused_0_2;
						mat4x4 unity_WorldToLight;
						vec4 _MainTex_ST;
						vec4 unused_0_5[15];
						vec4 _BumpMap_ST;
						vec4 unused_0_7[50];
					};
					UNITY_BINDING(1) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 _LightPositionRange;
						vec4 _LightProjectionParams;
						vec4 unused_1_3[43];
						vec4 unity_OcclusionMaskSelector;
						vec4 unused_1_5;
					};
					UNITY_BINDING(2) uniform UnityShadows {
						vec4 unused_2_0[24];
						vec4 _LightShadowData;
						vec4 unity_ShadowFadeCenterAndType;
					};
					UNITY_BINDING(3) uniform UnityPerDraw {
						vec4 unused_3_0[9];
						vec4 unity_WorldTransformParams;
						vec4 unused_3_2;
					};
					UNITY_BINDING(4) uniform UnityStereoGlobals {
						vec4 unused_4_0[8];
						mat4x4 unity_StereoMatrixV[2];
						vec4 unused_4_2[52];
						vec3 unity_StereoWorldSpaceCameraPos[2];
						vec4 unused_4_4[3];
					};
					UNITY_BINDING(5) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					UNITY_BINDING(6) uniform UnityProbeVolume {
						vec4 unity_ProbeVolumeParams;
						mat4x4 unity_ProbeVolumeWorldToObject;
						vec3 unity_ProbeVolumeSizeInv;
						vec3 unity_ProbeVolumeMin;
					};
					UNITY_LOCATION(0) uniform  sampler2D _LightTextureB0;
					UNITY_LOCATION(1) uniform  samplerCube _LightTexture0;
					UNITY_LOCATION(2) uniform  sampler3D unity_ProbeVolumeSH;
					UNITY_LOCATION(3) uniform  samplerCube _ShadowMapTexture;
					UNITY_LOCATION(4) uniform  samplerCubeShadow hlslcc_zcmp_ShadowMapTexture;
					UNITY_LOCATION(5) uniform  sampler2D _MainTex;
					UNITY_LOCATION(6) uniform  sampler2D _BumpMap;
					layout(location = 0) in  vec4 vs_TEXCOORD0;
					layout(location = 1) in  vec3 vs_TEXCOORD2;
					layout(location = 2) in  vec4 vs_TEXCOORD4;
					layout(location = 3) in  vec4 vs_TEXCOORD5;
					layout(location = 0) out vec4 SV_Target0;
					vec4 u_xlat0;
					vec4 u_xlat1;
					bool u_xlatb1;
					vec3 u_xlat2;
					vec4 u_xlat3;
					vec3 u_xlat4;
					vec3 u_xlat5;
					bool u_xlatb5;
					vec3 u_xlat6;
					bool u_xlatb6;
					vec3 u_xlat7;
					float u_xlat10;
					float u_xlat11;
					float u_xlat15;
					int u_xlati15;
					float u_xlat16;
					void main()
					{
					    u_xlat0.xyz = vs_TEXCOORD5.yyy * unity_WorldToLight[1].xyz;
					    u_xlat0.xyz = unity_WorldToLight[0].xyz * vs_TEXCOORD5.xxx + u_xlat0.xyz;
					    u_xlat0.xyz = unity_WorldToLight[2].xyz * vs_TEXCOORD5.zzz + u_xlat0.xyz;
					    u_xlat0.xyz = u_xlat0.xyz + unity_WorldToLight[3].xyz;
					    u_xlati15 = unity_StereoEyeIndex;
					    u_xlat1.xyz = (-vs_TEXCOORD5.xyz) + unity_StereoWorldSpaceCameraPos[u_xlati15].xyz;
					    u_xlati15 = unity_StereoEyeIndex << 2;
					    u_xlat2.x = unity_StereoMatrixV[u_xlati15 / 4][u_xlati15 % 4].z;
					    u_xlat2.y = unity_StereoMatrixV[(u_xlati15 + 1) / 4][(u_xlati15 + 1) % 4].z;
					    u_xlat2.z = unity_StereoMatrixV[(u_xlati15 + 2) / 4][(u_xlati15 + 2) % 4].z;
					    u_xlat15 = dot(u_xlat1.xyz, u_xlat2.xyz);
					    u_xlat1.xyz = vs_TEXCOORD5.xyz + (-unity_ShadowFadeCenterAndType.xyz);
					    u_xlat1.x = dot(u_xlat1.xyz, u_xlat1.xyz);
					    u_xlat1.x = sqrt(u_xlat1.x);
					    u_xlat1.x = (-u_xlat15) + u_xlat1.x;
					    u_xlat15 = unity_ShadowFadeCenterAndType.w * u_xlat1.x + u_xlat15;
					    u_xlat15 = u_xlat15 * _LightShadowData.z + _LightShadowData.w;
					    u_xlat15 = clamp(u_xlat15, 0.0, 1.0);
					    u_xlatb1 = unity_ProbeVolumeParams.x==1.0;
					    if(u_xlatb1){
					        u_xlatb1 = unity_ProbeVolumeParams.y==1.0;
					        u_xlat6.xyz = vs_TEXCOORD5.yyy * unity_ProbeVolumeWorldToObject[1].xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[0].xyz * vs_TEXCOORD5.xxx + u_xlat6.xyz;
					        u_xlat6.xyz = unity_ProbeVolumeWorldToObject[2].xyz * vs_TEXCOORD5.zzz + u_xlat6.xyz;
					        u_xlat6.xyz = u_xlat6.xyz + unity_ProbeVolumeWorldToObject[3].xyz;
					        u_xlat1.xyz = (bool(u_xlatb1)) ? u_xlat6.xyz : vs_TEXCOORD5.xyz;
					        u_xlat1.xyz = u_xlat1.xyz + (-unity_ProbeVolumeMin.xyz);
					        u_xlat1.yzw = u_xlat1.xyz * unity_ProbeVolumeSizeInv.xyz;
					        u_xlat6.x = u_xlat1.y * 0.25 + 0.75;
					        u_xlat2.x = unity_ProbeVolumeParams.z * 0.5 + 0.75;
					        u_xlat1.x = max(u_xlat6.x, u_xlat2.x);
					        u_xlat1 = texture(unity_ProbeVolumeSH, u_xlat1.xzw);
					    } else {
					        u_xlat1.x = float(1.0);
					        u_xlat1.y = float(1.0);
					        u_xlat1.z = float(1.0);
					        u_xlat1.w = float(1.0);
					    }
					    u_xlat1.x = dot(u_xlat1, unity_OcclusionMaskSelector);
					    u_xlat1.x = clamp(u_xlat1.x, 0.0, 1.0);
					    u_xlatb6 = u_xlat15<0.99000001;
					    if(u_xlatb6){
					        u_xlat6.xyz = vs_TEXCOORD5.xyz + (-_LightPositionRange.xyz);
					        u_xlat2.x = max(abs(u_xlat6.y), abs(u_xlat6.x));
					        u_xlat2.x = max(abs(u_xlat6.z), u_xlat2.x);
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.z);
					        u_xlat2.x = max(u_xlat2.x, 9.99999975e-06);
					        u_xlat2.x = u_xlat2.x * _LightProjectionParams.w;
					        u_xlat2.x = _LightProjectionParams.y / u_xlat2.x;
					        u_xlat2.x = u_xlat2.x + (-_LightProjectionParams.x);
					        u_xlat2.x = (-u_xlat2.x) + 1.0;
					        u_xlat7.xyz = u_xlat6.xyz + vec3(0.0078125, 0.0078125, 0.0078125);
					        vec4 txVec0 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.x = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec0, 0.0);
					        u_xlat7.xyz = u_xlat6.xyz + vec3(-0.0078125, -0.0078125, 0.0078125);
					        vec4 txVec1 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.y = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec1, 0.0);
					        u_xlat7.xyz = u_xlat6.xyz + vec3(-0.0078125, 0.0078125, -0.0078125);
					        vec4 txVec2 = vec4(u_xlat7.xyz,u_xlat2.x);
					        u_xlat3.z = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec2, 0.0);
					        u_xlat6.xyz = u_xlat6.xyz + vec3(0.0078125, -0.0078125, -0.0078125);
					        vec4 txVec3 = vec4(u_xlat6.xyz,u_xlat2.x);
					        u_xlat3.w = textureLod(hlslcc_zcmp_ShadowMapTexture, txVec3, 0.0);
					        u_xlat6.x = dot(u_xlat3, vec4(0.25, 0.25, 0.25, 0.25));
					        u_xlat11 = (-_LightShadowData.x) + 1.0;
					        u_xlat6.x = u_xlat6.x * u_xlat11 + _LightShadowData.x;
					    } else {
					        u_xlat6.x = 1.0;
					    }
					    u_xlat1.x = (-u_xlat6.x) + u_xlat1.x;
					    u_xlat15 = u_xlat15 * u_xlat1.x + u_xlat6.x;
					    u_xlat1.x = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat1.x = texture(_LightTextureB0, u_xlat1.xx).x;
					    u_xlat0.x = texture(_LightTexture0, u_xlat0.xyz).w;
					    u_xlat0.x = u_xlat0.x * u_xlat1.x;
					    u_xlat0.x = u_xlat15 * u_xlat0.x;
					    u_xlat5.x = float((gl_FrontFacing ? 0xffffffffu : uint(0)));
					    u_xlat10 = dot(vs_TEXCOORD2.xyz, vs_TEXCOORD2.xyz);
					    u_xlat10 = inversesqrt(u_xlat10);
					    u_xlat1.xyz = vec3(u_xlat10) * vs_TEXCOORD2.xyz;
					    u_xlat2.xyz = vs_TEXCOORD2.zxy * vs_TEXCOORD4.yzx;
					    u_xlat2.xyz = vs_TEXCOORD2.yzx * vs_TEXCOORD4.zxy + (-u_xlat2.xyz);
					    u_xlat10 = vs_TEXCOORD4.w * unity_WorldTransformParams.w;
					    u_xlat2.xyz = vec3(u_xlat10) * u_xlat2.xyz;
					    u_xlatb5 = vec4(0.0, 0.0, 0.0, 0.0)!=vec4(u_xlat5.x);
					    u_xlat1.xyz = (bool(u_xlatb5)) ? u_xlat1.xyz : (-u_xlat1.xyz);
					    u_xlat3.xyz = (bool(u_xlatb5)) ? vs_TEXCOORD4.xyz : (-vs_TEXCOORD4.xyz);
					    u_xlat5.xyz = (bool(u_xlatb5)) ? u_xlat2.xyz : (-u_xlat2.xyz);
					    u_xlat2.xy = vs_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
					    u_xlat2.xyz = texture(_MainTex, u_xlat2.xy).xyz;
					    u_xlat4.xy = vs_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
					    u_xlat4.xyz = texture(_BumpMap, u_xlat4.xy).xyw;
					    u_xlat4.x = u_xlat4.z * u_xlat4.x;
					    u_xlat4.xy = u_xlat4.xy * vec2(2.0, 2.0) + vec2(-1.0, -1.0);
					    u_xlat16 = dot(u_xlat4.xy, u_xlat4.xy);
					    u_xlat16 = min(u_xlat16, 1.0);
					    u_xlat16 = (-u_xlat16) + 1.0;
					    u_xlat16 = sqrt(u_xlat16);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat4.yyy;
					    u_xlat5.xyz = u_xlat4.xxx * u_xlat3.xyz + u_xlat5.xyz;
					    u_xlat5.xyz = vec3(u_xlat16) * u_xlat1.xyz + u_xlat5.xyz;
					    u_xlat1.x = dot(u_xlat5.xyz, u_xlat5.xyz);
					    u_xlat1.x = inversesqrt(u_xlat1.x);
					    u_xlat5.xyz = u_xlat5.xyz * u_xlat1.xxx;
					    u_xlat5.x = dot(u_xlat5.xyz, _WorldSpaceLightPos0.xyz);
					    u_xlat1.xyz = u_xlat2.xyz * vec3(9.99999972e-10, 9.99999972e-10, 9.99999972e-10);
					    u_xlat1.xyz = clamp(u_xlat1.xyz, 0.0, 1.0);
					    u_xlat0.x = max(u_xlat0.x, 0.5);
					    u_xlat0.xzw = u_xlat0.xxx * _LightColor0.xyz;
					    u_xlat5.x = u_xlat5.x * 0.5 + 0.5;
					    u_xlat5.x = (-u_xlat5.x) + 1.0;
					    u_xlat5.x = u_xlat5.x + u_xlat5.x;
					    u_xlat5.x = clamp(u_xlat5.x, 0.0, 1.0);
					    u_xlat16 = u_xlat5.x * -2.0 + 3.0;
					    u_xlat5.x = u_xlat5.x * u_xlat5.x;
					    u_xlat5.x = u_xlat5.x * u_xlat16;
					    u_xlat2.xyz = _LightColor0.xyz * vec3(0.5, 0.5, 0.5) + (-u_xlat0.xzw);
					    u_xlat0.xyz = u_xlat5.xxx * u_xlat2.xyz + u_xlat0.xzw;
					    SV_Target0.xyz = u_xlat0.xyz * u_xlat1.xyz;
					    SV_Target0.w = 1.0;
					    return;
					}"
				}
			}
		}
		Pass {
			Name "ShadowCasterPass"
			Tags { "LIGHTMODE" = "SHADOWCASTER" "QUEUE" = "Geometry+10" "RenderType" = "Opaque" }
			ColorMask 0 -1
			ZWrite Off
			Cull Off
			Stencil {
				Comp Disabled
				Pass Keep
				Fail Keep
				ZFail Keep
			}
			GpuProgramID 161416
			Program "vp" {
				SubProgram "d3d11 " {
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_0_1[47];
					};
					UNITY_BINDING(1) uniform UnityShadows {
						vec4 unused_1_0[5];
						vec4 unity_LightShadowBias;
						vec4 unused_1_2[20];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					UNITY_BINDING(3) uniform UnityPerFrame {
						vec4 unused_3_0[17];
						mat4x4 unity_MatrixVP;
						vec4 unused_3_2[2];
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_COLOR0;
					layout(location = 3) in  vec2 in_TEXCOORD0;
					layout(location = 4) in  vec2 in_TEXCOORD1;
					layout(location = 5) in  vec2 in_TEXCOORD2;
					layout(location = 6) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec2 vs_TEXCOORD1;
					layout(location = 1) out vec2 vs_TEXCOORD2;
					layout(location = 2) out vec2 vs_TEXCOORD3;
					layout(location = 3) out vec2 vs_TEXCOORD4;
					layout(location = 4) out vec3 vs_TEXCOORD5;
					layout(location = 5) out vec4 vs_TEXCOORD6;
					layout(location = 6) out vec4 vs_TEXCOORD7;
					layout(location = 7) out vec3 vs_TEXCOORD8;
					layout(location = 8) out vec4 vs_TEXCOORD9;
					layout(location = 9) out vec3 vs_TEXCOORD10;
					layout(location = 10) out vec4 vs_TEXCOORD11;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					float u_xlat8;
					float u_xlat12;
					bool u_xlatb12;
					void main()
					{
					    u_xlat0.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat0.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat0.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat2 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat3.xyz = (-u_xlat2.xyz) * _WorldSpaceLightPos0.www + _WorldSpaceLightPos0.xyz;
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat12) * u_xlat3.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat3.xyz);
					    u_xlat12 = (-u_xlat12) * u_xlat12 + 1.0;
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat12 = u_xlat12 * unity_LightShadowBias.z;
					    u_xlat0.xyz = (-u_xlat0.xyz) * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlatb12 = unity_LightShadowBias.z!=0.0;
					    u_xlat0.xyz = (bool(u_xlatb12)) ? u_xlat0.xyz : u_xlat2.xyz;
					    u_xlat3 = u_xlat0.yyyy * unity_MatrixVP[1];
					    u_xlat3 = unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat3;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat3;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat2.wwww + u_xlat0;
					    vs_TEXCOORD6 = u_xlat2;
					    u_xlat2.x = unity_LightShadowBias.x / u_xlat0.w;
					    u_xlat2.x = min(u_xlat2.x, 0.0);
					    u_xlat2.x = max(u_xlat2.x, -1.0);
					    u_xlat8 = u_xlat0.z + u_xlat2.x;
					    u_xlat2.x = min(u_xlat0.w, u_xlat8);
					    gl_Position.xyw = u_xlat0.xyw;
					    u_xlat0.x = (-u_xlat8) + u_xlat2.x;
					    gl_Position.z = unity_LightShadowBias.y * u_xlat0.x + u_xlat8;
					    vs_TEXCOORD1.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD2.xy = in_TEXCOORD1.xy;
					    vs_TEXCOORD3.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD4.xy = in_TEXCOORD3.xy;
					    vs_TEXCOORD5.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD7 = in_POSITION0;
					    vs_TEXCOORD8.xyz = vec3(1.0, 1.0, 1.0);
					    u_xlat0 = u_xlat1.yyyy * unity_MatrixVP[1];
					    u_xlat0 = unity_MatrixVP[0] * u_xlat1.xxxx + u_xlat0;
					    u_xlat0 = unity_MatrixVP[2] * u_xlat1.zzzz + u_xlat0;
					    u_xlat0 = unity_MatrixVP[3] * u_xlat1.wwww + u_xlat0;
					    vs_TEXCOORD9.zw = u_xlat0.zw;
					    u_xlat0.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    vs_TEXCOORD9.xy = u_xlat0.yy + u_xlat0.xz;
					    vs_TEXCOORD10.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11 = in_COLOR0;
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"vs_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
					#if HLSLCC_ENABLE_UNIFORM_BUFFERS
					#define UNITY_UNIFORM
					#else
					#define UNITY_UNIFORM uniform
					#endif
					#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
					#if UNITY_SUPPORTS_UNIFORM_LOCATION
					#define UNITY_LOCATION(x) layout(location = x)
					#define UNITY_BINDING(x) layout(binding = x, std140)
					#else
					#define UNITY_LOCATION(x)
					#define UNITY_BINDING(x) layout(std140)
					#endif
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					UNITY_BINDING(0) uniform UnityLighting {
						vec4 _WorldSpaceLightPos0;
						vec4 unused_0_1[47];
					};
					UNITY_BINDING(1) uniform UnityShadows {
						vec4 unused_1_0[5];
						vec4 unity_LightShadowBias;
						vec4 unused_1_2[20];
					};
					UNITY_BINDING(2) uniform UnityPerDraw {
						mat4x4 unity_ObjectToWorld;
						mat4x4 unity_WorldToObject;
						vec4 unused_2_2[3];
					};
					UNITY_BINDING(3) uniform UnityStereoGlobals {
						vec4 unused_3_0[24];
						mat4x4 unity_StereoMatrixVP[2];
						vec4 unused_3_2[38];
						vec4 unity_StereoScaleOffset[2];
						vec4 unused_3_4;
					};
					UNITY_BINDING(4) uniform UnityStereoEyeIndex {
						int unity_StereoEyeIndex;
					};
					layout(location = 0) in  vec4 in_POSITION0;
					layout(location = 1) in  vec3 in_NORMAL0;
					layout(location = 2) in  vec4 in_COLOR0;
					layout(location = 3) in  vec2 in_TEXCOORD0;
					layout(location = 4) in  vec2 in_TEXCOORD1;
					layout(location = 5) in  vec2 in_TEXCOORD2;
					layout(location = 6) in  vec2 in_TEXCOORD3;
					layout(location = 0) out vec2 vs_TEXCOORD1;
					layout(location = 1) out vec2 vs_TEXCOORD2;
					layout(location = 2) out vec2 vs_TEXCOORD3;
					layout(location = 3) out vec2 vs_TEXCOORD4;
					layout(location = 4) out vec3 vs_TEXCOORD5;
					layout(location = 5) out vec4 vs_TEXCOORD6;
					layout(location = 6) out vec4 vs_TEXCOORD7;
					layout(location = 7) out vec3 vs_TEXCOORD8;
					layout(location = 8) out vec4 vs_TEXCOORD9;
					layout(location = 9) out vec3 vs_TEXCOORD10;
					layout(location = 10) out vec4 vs_TEXCOORD11;
					vec4 u_xlat0;
					vec4 u_xlat1;
					vec4 u_xlat2;
					vec4 u_xlat3;
					float u_xlat4;
					int u_xlati8;
					float u_xlat12;
					int u_xlati12;
					bool u_xlatb12;
					void main()
					{
					    u_xlat0.x = dot(in_NORMAL0.xyz, unity_WorldToObject[0].xyz);
					    u_xlat0.y = dot(in_NORMAL0.xyz, unity_WorldToObject[1].xyz);
					    u_xlat0.z = dot(in_NORMAL0.xyz, unity_WorldToObject[2].xyz);
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat0.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat0.xyz = vec3(u_xlat12) * u_xlat0.xyz;
					    u_xlat1 = in_POSITION0.yyyy * unity_ObjectToWorld[1];
					    u_xlat1 = unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat1;
					    u_xlat1 = unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat1;
					    u_xlat2 = unity_ObjectToWorld[3] * in_POSITION0.wwww + u_xlat1;
					    u_xlat1 = u_xlat1 + unity_ObjectToWorld[3];
					    u_xlat3.xyz = (-u_xlat2.xyz) * _WorldSpaceLightPos0.www + _WorldSpaceLightPos0.xyz;
					    u_xlat12 = dot(u_xlat3.xyz, u_xlat3.xyz);
					    u_xlat12 = inversesqrt(u_xlat12);
					    u_xlat3.xyz = vec3(u_xlat12) * u_xlat3.xyz;
					    u_xlat12 = dot(u_xlat0.xyz, u_xlat3.xyz);
					    u_xlat12 = (-u_xlat12) * u_xlat12 + 1.0;
					    u_xlat12 = sqrt(u_xlat12);
					    u_xlat12 = u_xlat12 * unity_LightShadowBias.z;
					    u_xlat0.xyz = (-u_xlat0.xyz) * vec3(u_xlat12) + u_xlat2.xyz;
					    u_xlatb12 = unity_LightShadowBias.z!=0.0;
					    u_xlat0.xyz = (bool(u_xlatb12)) ? u_xlat0.xyz : u_xlat2.xyz;
					    u_xlati12 = unity_StereoEyeIndex << 2;
					    u_xlat3 = u_xlat0.yyyy * unity_StereoMatrixVP[(u_xlati12 + 1) / 4][(u_xlati12 + 1) % 4];
					    u_xlat3 = unity_StereoMatrixVP[u_xlati12 / 4][u_xlati12 % 4] * u_xlat0.xxxx + u_xlat3;
					    u_xlat3 = unity_StereoMatrixVP[(u_xlati12 + 2) / 4][(u_xlati12 + 2) % 4] * u_xlat0.zzzz + u_xlat3;
					    u_xlat3 = unity_StereoMatrixVP[(u_xlati12 + 3) / 4][(u_xlati12 + 3) % 4] * u_xlat2.wwww + u_xlat3;
					    vs_TEXCOORD6 = u_xlat2;
					    u_xlat0.x = unity_LightShadowBias.x / u_xlat3.w;
					    u_xlat0.x = min(u_xlat0.x, 0.0);
					    u_xlat0.x = max(u_xlat0.x, -1.0);
					    u_xlat0.x = u_xlat0.x + u_xlat3.z;
					    u_xlat4 = min(u_xlat3.w, u_xlat0.x);
					    gl_Position.xyw = u_xlat3.xyw;
					    u_xlat4 = (-u_xlat0.x) + u_xlat4;
					    gl_Position.z = unity_LightShadowBias.y * u_xlat4 + u_xlat0.x;
					    vs_TEXCOORD1.xy = in_TEXCOORD0.xy;
					    vs_TEXCOORD2.xy = in_TEXCOORD1.xy;
					    vs_TEXCOORD3.xy = in_TEXCOORD2.xy;
					    vs_TEXCOORD4.xy = in_TEXCOORD3.xy;
					    vs_TEXCOORD5.xyz = unity_ObjectToWorld[3].xyz;
					    vs_TEXCOORD7 = in_POSITION0;
					    vs_TEXCOORD8.xyz = vec3(1.0, 1.0, 1.0);
					    u_xlat2 = u_xlat1.yyyy * unity_StereoMatrixVP[(u_xlati12 + 1) / 4][(u_xlati12 + 1) % 4];
					    u_xlat2 = unity_StereoMatrixVP[u_xlati12 / 4][u_xlati12 % 4] * u_xlat1.xxxx + u_xlat2;
					    u_xlat2 = unity_StereoMatrixVP[(u_xlati12 + 2) / 4][(u_xlati12 + 2) % 4] * u_xlat1.zzzz + u_xlat2;
					    u_xlat0 = unity_StereoMatrixVP[(u_xlati12 + 3) / 4][(u_xlati12 + 3) % 4] * u_xlat1.wwww + u_xlat2;
					    vs_TEXCOORD9.zw = u_xlat0.zw;
					    u_xlat0.xyz = u_xlat0.xwy * vec3(0.5, 0.5, -0.5);
					    u_xlat0.xy = u_xlat0.yy + u_xlat0.xz;
					    u_xlati8 = unity_StereoEyeIndex;
					    u_xlat1.xy = u_xlat0.ww * unity_StereoScaleOffset[u_xlati8].zw;
					    vs_TEXCOORD9.xy = u_xlat0.xy * unity_StereoScaleOffset[u_xlati8].xy + u_xlat1.xy;
					    vs_TEXCOORD10.xyz = vec3(0.0, 0.0, 0.0);
					    vs_TEXCOORD11 = in_COLOR0;
					    return;
					}"
				}
			}
			Program "fp" {
				SubProgram "d3d11 " {
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
				SubProgram "d3d11 " {
					Keywords { "UNITY_SINGLE_PASS_STEREO" }
					"ps_5_0
					
					#version 430
					#extension GL_ARB_explicit_attrib_location : require
					#extension GL_ARB_explicit_uniform_location : require
					
					precise vec4 u_xlat_precise_vec4;
					precise ivec4 u_xlat_precise_ivec4;
					precise bvec4 u_xlat_precise_bvec4;
					precise uvec4 u_xlat_precise_uvec4;
					layout(location = 0) out vec4 SV_Target0;
					void main()
					{
					    SV_Target0 = vec4(0.0, 0.0, 0.0, 0.0);
					    return;
					}"
				}
			}
		}
	}
	CustomEditor "Thry.ShaderEditor"
}