	.file	"302536.c"
	.intel_syntax noprefix
	.text
	.globl	datatoc_shadow_copy_frag_glsl_size
	.data
	.align 4
	.type	datatoc_shadow_copy_frag_glsl_size, @object
	.size	datatoc_shadow_copy_frag_glsl_size, 4
datatoc_shadow_copy_frag_glsl_size:
	.long	5331
	.globl	datatoc_shadow_copy_frag_glsl
	.align 32
	.type	datatoc_shadow_copy_frag_glsl, @object
	.size	datatoc_shadow_copy_frag_glsl, 5332
datatoc_shadow_copy_frag_glsl:
	.ascii	"/* Copy the depth only shadowmap into another texture while "
	.ascii	"converting\r\n * to linear depth (or other storage method) a"
	.ascii	"nd doing a 3x3 box filter. */\r\n\r\nlayout(std140) uniform "
	.ascii	"shadow_render_block {\r\n\tvec4 lampPosition;\r\n\tfloat cub"
	.ascii	"eTexelSize;\r\n\tfloat storedTexelSize;\r\n\tfloat nearClip;"
	.ascii	"\r\n\tfloat farClip;\r\n\tint shadowSampleCount;\r\n\tfloat "
	.ascii	"shadowInvSampleCount;\r\n\tfloat exponent;\r\n};\r\n\r\n#ifd"
	.ascii	"ef CSM\r\nuniform sampler2DArray shadowTexture;\r\nuniform i"
	.ascii	"nt cascadeId;\r\n#else\r\nuniform samplerCube shadowTexture;"
	.ascii	"\r\nuniform int faceId;\r\n#endif\r\nuniform float shadowFil"
	.ascii	"terSize;\r\n\r\nout vec4 FragColor;\r\n\r\n#define linear_de"
	.ascii	"pth(z) ((nearClip  * farClip) / (clamp(z, 0.0, 0.999999) * ("
	.ascii	"nearClip - farClip) + farClip))\r\n\r\n/* add bias so backgr"
	.ascii	"ound filtering does not bleed into shadow map */\r\n#define "
	.ascii	"BACKGROUND_BIAS 0.05\r\n\r\n#ifdef CSM\r\nvec4 get_world_dis"
	.ascii	"tance(vec4 depths, vec3 cos[4])\r\n{\r\n\tdepths += step(vec"
	.ascii	"4(0.9999), depths) * BACKGROUND_BIAS;\r\n\treturn clamp(dept"
	.ascii	"hs * abs(farClip - nearClip), 0.0, 1e10); /* Same factor as "
	.ascii	"in shadow_cascade(). */\r\n}\r\n\r\nfloat get_world_distance"
	.ascii	"(float depth, vec3 cos)\r\n{\r\n\tdepth += step(0.9999, dept"
	.ascii	"h) * BACKGROUND_BIAS;\r\n\treturn clamp(depth * abs(farClip "
	.ascii	"- nearClip), 0.0, 1e10); /* Same factor as in shadow_cascade"
	.ascii	"(). */\r\n}\r\n\r\n#else /* CUBEMAP */\r\nvec4 get_world_dis"
	.ascii	"tance(vec4 depths, vec3 cos[4])\r\n{\r\n\tdepths = linear_de"
	.ascii	"pth(depths);\r\n\tcos[0] = normalize(abs(cos[0]));\r\n\tcos["
	.ascii	"1] = normalize(abs(cos[1]));\r\n\tcos[2] = normalize(abs(cos"
	.ascii	"[2]));\r\n\tcos[3] = normalize(abs(cos[3]));\r\n\tvec4 cos_v"
	.ascii	"ec;\r\n\tcos_vec.x = max(cos[0].x, max(cos[0].y, cos[0].z));"
	.ascii	"\r\n\tcos_vec.y = max(cos[1].x, max(cos[1].y, cos[1].z));\r\n"
	.ascii	"\tcos_vec.z = max(cos[2].x, max(cos[2].y, cos[2].z));\r\n\tc"
	.ascii	"os_vec.w = max(cos[3].x, max(cos[3].y, cos[3].z));\r\n\tretu"
	.ascii	"rn depths / cos_vec;\r\n}\r\n\r\nfloat get_world_distance(fl"
	.ascii	"oat depth, vec3 cos)\r\n{\r\n\tdepth = linear_depth(depth);\r"
	.ascii	"\n\tcos = normalize(abs(cos));\r\n\tfloat cos_vec = max(cos."
	.ascii	"x, max(cos.y, cos.z));\r\n\treturn depth / cos_vec;\r\n}\r\n"
	.ascii	"#endif\r\n\r\n/* Marco Salvi's GDC 2008 presentation about s"
	.ascii	"h"
	.ascii	"adow maps pre-filtering techniques slide 24 */\r\n#define ln"
	.ascii	"_space_prefilter_step(ref, sample) exp(sample - ref)\r\n#def"
	.ascii	"ine ln_space_prefilter_finalize(ref, sum) (ref + log(SAMPLE_"
	.ascii	"WEIGHT * sum))\r\n\r\n#define SAMPLE_WEIGHT 0.11111\r\n\r\n#"
	.ascii	"ifdef ESM\r\nvoid prefilter(vec4 depths, float ref, inout fl"
	.ascii	"oat accum)\r\n{\r\n\taccum += dot(ln_space_prefilter_step(re"
	.ascii	"f, depths), vec4(1.0));\r\n}\r\n#else /* VSM */\r\nvoid pref"
	.ascii	"ilter(vec4 depths, float ref, inout vec2 accum)\r\n{\r\n\tve"
	.ascii	"c4 depths_sqr = depths * depths;\r\n\taccum += vec2(dot(vec4"
	.ascii	"(1.0), depths), dot(vec4(1.0), depths_sqr)) * SAMPLE_WEIGHT;"
	.ascii	"\r\n}\r\n#endif\r\n\r\n#ifdef CSM\r\nvec3 get_texco(vec2 uvs"
	.ascii	", vec2 ofs)\r\n{\r\n\treturn vec3(uvs + ofs, float(cascadeId"
	.ascii	"));\r\n}\r\n#else /* CUBEMAP */\r\nconst vec3 minorAxisX[6] "
	.ascii	"= vec3[6](\r\n\tvec3(0.0f, 0.0f, -1.0f),\r\n\tvec3(0.0f, 0.0"
	.ascii	"f, 1.0f),\r\n\tvec3(1.0f, 0.0f, 0.0f),\r\n\tvec3(1.0f, 0.0f,"
	.ascii	" 0.0f),\r\n\tvec3(1.0f, 0.0f, 0.0f),\r\n\tvec3(-1.0f, 0.0f, "
	.ascii	"0.0f)\r\n);\r\n\r\nconst vec3 minorAxisY[6] = vec3[6](\r\n\t"
	.ascii	"vec3(0.0f, -1.0f, 0.0f),\r\n\tvec3(0.0f, -1.0f, 0.0f),\r\n\t"
	.ascii	"vec3(0.0f, 0.0f, 1.0f),\r\n\tvec3(0.0f, 0.0f, -1.0f),\r\n\tv"
	.ascii	"ec3(0.0f, -1.0f, 0.0f),\r\n\tvec3(0.0f, -1.0f, 0.0f)\r\n);\r"
	.ascii	"\n\r\nconst vec3 majorAxis[6] = vec3[6](\r\n\tvec3(1.0f, 0.0"
	.ascii	"f, 0.0f),\r\n\tvec3(-1.0f, 0.0f, 0.0f),\r\n\tvec3(0.0f, 1.0f"
	.ascii	", 0.0f),\r\n\tvec3(0.0f, -1.0f, 0.0f),\r\n\tvec3(0.0f, 0.0f,"
	.ascii	" 1.0f),\r\n\tvec3(0.0f, 0.0f, -1.0f)\r\n);\r\n\r\nvec3 get_t"
	.ascii	"exco(vec2 uvs, vec2 ofs)\r\n{\r\n\tuvs += ofs;\r\n\treturn m"
	.ascii	"ajorAxis[faceId] + uvs.x * minorAxisX[faceId] + uvs.y * mino"
	.ascii	"rAxisY[faceId];\r\n}\r\n#endif\r\n\r\nvoid main() {\r\n\t/* "
	.ascii	"Copy the depth only shadowmap into another texture while con"
	.ascii	"verting\r\n\t * to linear depth and do a 3x3 box blur. */\r\n"
	.ascii	"\r\n#ifdef CSM\r\n\tvec2 uvs = gl_FragCoord.xy * storedTexel"
	.ascii	"Size;\r\n#else /* CUBEMAP */\r\n\tvec2 uvs = gl_FragCoord.xy"
	.ascii	" * cubeTexelSize * 2.0 - 1.0;\r\n#endif\r\n\r\n\t/* Center t"
	.ascii	"exel */\r\n\tvec3 co = get_texco(uvs, vec2(0.0));\r\n\tfloat"
	.ascii	" depth = texture(shadowTexture, co).r;\r\n\tdepth = get_worl"
	.ascii	"d_distance(depth, co);\r\n\r\n\tif (shadowFilterSize == 0.0)"
	.ascii	" {\r\n#ifdef ESM\r\n\t\tFragColor = vec4(depth);\r\n#else /*"
	.ascii	" VSM */\r\n\t\tFragColor = vec2("
	.ascii	"depth, depth * depth).xyxy;\r\n#endif\r\n\t\treturn;\r\n\t}\r"
	.ascii	"\n\r\n#ifdef ESM\r\n\tfloat accum = 1.0;\r\n\tfloat ref = de"
	.ascii	"pth;\r\n#else /* VSM */\r\n\tfloat ref = 0.0; /* UNUSED */\r"
	.ascii	"\n\tvec2 accum = vec2(depth, depth * depth) * SAMPLE_WEIGHT;"
	.ascii	"\r\n#endif\r\n\r\n#ifdef CSM\r\n\tvec3 ofs = vec3(1.0, 0.0, "
	.ascii	"-1.0) * shadowFilterSize;\r\n#else /* CUBEMAP */\r\n\tvec3 o"
	.ascii	"fs = vec3(1.0, 0.0, -1.0) * shadowFilterSize;\r\n#endif\r\n\r"
	.ascii	"\n\tvec3 cos[4];\r\n\tcos[0] = get_texco(uvs, ofs.zz);\r\n\t"
	.ascii	"cos[1] = get_texco(uvs, ofs.yz);\r\n\tcos[2] = get_texco(uvs"
	.ascii	", ofs.xz);\r\n\tcos[3] = get_texco(uvs, ofs.zy);\r\n\r\n\tve"
	.ascii	"c4 depths;\r\n\tdepths.x = texture(shadowTexture, cos[0]).r;"
	.ascii	"\r\n\tdepths.y = texture(shadowTexture, cos[1]).r;\r\n\tdept"
	.ascii	"hs.z = texture(shadowTexture, cos[2]).r;\r\n\tdepths.w = tex"
	.ascii	"ture(shadowTexture, cos[3]).r;\r\n\tdepths = get_world_dista"
	.ascii	"nce(depths, cos);\r\n\tprefilter(depths, ref, accum);\r\n\r\n"
	.ascii	"\tcos[0] = get_texco(uvs, ofs.xy);\r\n\tcos[1] = get_texco(u"
	.ascii	"vs, ofs.zx);\r\n\tcos[2] = get_texco(uvs, ofs.yx);\r\n\tcos["
	.ascii	"3] = get_texco(uvs, ofs.xx);\r\n\tdepths.x = texture(shadowT"
	.ascii	"exture, cos[0]).r;\r\n\tdepths.y = texture(shadowTexture, co"
	.ascii	"s[1]).r;\r\n\tdepths.z = texture(shado"
	.string	"wTexture, cos[2]).r;\r\n\tdepths.w = texture(shadowTexture, cos[3]).r;\r\n\tdepths = get_world_distance(depths, cos);\r\n\tprefilter(depths, ref, accum);\r\n\r\n#ifdef ESM\r\n\taccum = ln_space_prefilter_finalize(ref, accum);\r\n#endif\r\n\r\n\tFragColor = vec2(accum).xyxy;\r\n}\r\n"
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"302536.c"
	.text
	.global	datatoc_shadow_copy_frag_glsl_size
	.data
	.align	2
	.type	datatoc_shadow_copy_frag_glsl_size, %object
	.size	datatoc_shadow_copy_frag_glsl_size, 4
datatoc_shadow_copy_frag_glsl_size:
	.word	5331
	.global	datatoc_shadow_copy_frag_glsl
	.align	2
	.type	datatoc_shadow_copy_frag_glsl, %object
	.size	datatoc_shadow_copy_frag_glsl, 5332
datatoc_shadow_copy_frag_glsl:
	.ascii	"/* Copy the depth only shadowmap into another textu"
	.ascii	"re while converting\015\012 * to linear depth (or o"
	.ascii	"ther storage method) and doing a 3x3 box filter. */"
	.ascii	"\015\012\015\012layout(std140) uniform shadow_rende"
	.ascii	"r_block {\015\012\011vec4 lampPosition;\015\012\011"
	.ascii	"float cubeTexelSize;\015\012\011float storedTexelSi"
	.ascii	"ze;\015\012\011float nearClip;\015\012\011float far"
	.ascii	"Clip;\015\012\011int shadowSampleCount;\015\012\011"
	.ascii	"float shadowInvSampleCount;\015\012\011float expone"
	.ascii	"nt;\015\012};\015\012\015\012#ifdef CSM\015\012unif"
	.ascii	"orm sampler2DArray shadowTexture;\015\012uniform in"
	.ascii	"t cascadeId;\015\012#else\015\012uniform samplerCub"
	.ascii	"e shadowTexture;\015\012uniform int faceId;\015\012"
	.ascii	"#endif\015\012uniform float shadowFilterSize;\015\012"
	.ascii	"\015\012out vec4 FragColor;\015\012\015\012#define "
	.ascii	"linear_depth(z) ((nearClip  * farClip) / (clamp(z, "
	.ascii	"0.0, 0.999999) * (nearClip - farClip) + farClip))\015"
	.ascii	"\012\015\012/* add bias so background filtering doe"
	.ascii	"s not bleed into shadow map */\015\012#define BACKG"
	.ascii	"ROUND_BIAS 0.05\015\012\015\012#ifdef CSM\015\012ve"
	.ascii	"c4 get_world_distance(vec4 depths, vec3 cos[4])\015"
	.ascii	"\012{\015\012\011depths += step(vec4(0.9999), depth"
	.ascii	"s) * BACKGROUND_BIAS;\015\012\011return clamp(depth"
	.ascii	"s * abs(farClip - nearClip), 0.0, 1e10); /* Same fa"
	.ascii	"ctor as in shadow_cascade(). */\015\012}\015\012\015"
	.ascii	"\012float get_world_distance(float depth, vec3 cos)"
	.ascii	"\015\012{\015\012\011depth += step(0.9999, depth) *"
	.ascii	" BACKGROUND_BIAS;\015\012\011return clamp(depth * a"
	.ascii	"bs(farClip - nearClip), 0.0, 1e10); /* Same factor "
	.ascii	"as in shadow_cascade(). */\015\012}\015\012\015\012"
	.ascii	"#else /* CUBEMAP */\015\012vec4 get_world_distance("
	.ascii	"vec4 depths, vec3 cos[4])\015\012{\015\012\011depth"
	.ascii	"s = linear_depth(depths);\015\012\011cos[0] = norma"
	.ascii	"lize(abs(cos[0]));\015\012\011cos[1] = normalize(ab"
	.ascii	"s(cos[1]));\015\012\011cos[2] = normalize(abs(cos[2"
	.ascii	"]));\015\012\011cos[3] = normalize(abs(cos[3]));\015"
	.ascii	"\012\011vec4 cos_vec;\015\012\011cos_vec.x = max(co"
	.ascii	"s[0].x, max(cos[0].y, cos[0].z));\015\012\011cos_ve"
	.ascii	"c.y = max(cos[1].x, max(cos[1].y, cos[1].z));\015\012"
	.ascii	"\011cos_vec.z = max(cos[2].x, max(cos[2].y, cos[2]."
	.ascii	"z));\015\012\011cos_vec.w = max(cos[3].x, max(cos[3"
	.ascii	"].y, cos[3].z));\015\012\011return depths / cos_vec"
	.ascii	";\015\012}\015\012\015\012float get_world_distance("
	.ascii	"float depth, vec3 cos)\015\012{\015\012\011depth = "
	.ascii	"linear_depth(depth);\015\012\011cos = normalize(abs"
	.ascii	"(cos));\015\012\011float cos_vec = max(cos.x, max(c"
	.ascii	"os.y, cos.z));\015\012\011return depth / cos_vec;\015"
	.ascii	"\012}\015\012#endif\015\012\015\012/* Marco Salvi's"
	.ascii	" GDC 2008 presentation about sh"
	.ascii	"adow maps pre-filtering techniques slide 24 */\015\012"
	.ascii	"#define ln_space_prefilter_step(ref, sample) exp(sa"
	.ascii	"mple - ref)\015\012#define ln_space_prefilter_final"
	.ascii	"ize(ref, sum) (ref + log(SAMPLE_WEIGHT * sum))\015\012"
	.ascii	"\015\012#define SAMPLE_WEIGHT 0.11111\015\012\015\012"
	.ascii	"#ifdef ESM\015\012void prefilter(vec4 depths, float"
	.ascii	" ref, inout float accum)\015\012{\015\012\011accum "
	.ascii	"+= dot(ln_space_prefilter_step(ref, depths), vec4(1"
	.ascii	".0));\015\012}\015\012#else /* VSM */\015\012void p"
	.ascii	"refilter(vec4 depths, float ref, inout vec2 accum)\015"
	.ascii	"\012{\015\012\011vec4 depths_sqr = depths * depths;"
	.ascii	"\015\012\011accum += vec2(dot(vec4(1.0), depths), d"
	.ascii	"ot(vec4(1.0), depths_sqr)) * SAMPLE_WEIGHT;\015\012"
	.ascii	"}\015\012#endif\015\012\015\012#ifdef CSM\015\012ve"
	.ascii	"c3 get_texco(vec2 uvs, vec2 ofs)\015\012{\015\012\011"
	.ascii	"return vec3(uvs + ofs, float(cascadeId));\015\012}\015"
	.ascii	"\012#else /* CUBEMAP */\015\012const vec3 minorAxis"
	.ascii	"X[6] = vec3[6](\015\012\011vec3(0.0f, 0.0f, -1.0f),"
	.ascii	"\015\012\011vec3(0.0f, 0.0f, 1.0f),\015\012\011vec3"
	.ascii	"(1.0f, 0.0f, 0.0f),\015\012\011vec3(1.0f, 0.0f, 0.0"
	.ascii	"f),\015\012\011vec3(1.0f, 0.0f, 0.0f),\015\012\011v"
	.ascii	"ec3(-1.0f, 0.0f, 0.0f)\015\012);\015\012\015\012con"
	.ascii	"st vec3 minorAxisY[6] = vec3[6](\015\012\011vec3(0."
	.ascii	"0f, -1.0f, 0.0f),\015\012\011vec3(0.0f, -1.0f, 0.0f"
	.ascii	"),\015\012\011vec3(0.0f, 0.0f, 1.0f),\015\012\011ve"
	.ascii	"c3(0.0f, 0.0f, -1.0f),\015\012\011vec3(0.0f, -1.0f,"
	.ascii	" 0.0f),\015\012\011vec3(0.0f, -1.0f, 0.0f)\015\012)"
	.ascii	";\015\012\015\012const vec3 majorAxis[6] = vec3[6]("
	.ascii	"\015\012\011vec3(1.0f, 0.0f, 0.0f),\015\012\011vec3"
	.ascii	"(-1.0f, 0.0f, 0.0f),\015\012\011vec3(0.0f, 1.0f, 0."
	.ascii	"0f),\015\012\011vec3(0.0f, -1.0f, 0.0f),\015\012\011"
	.ascii	"vec3(0.0f, 0.0f, 1.0f),\015\012\011vec3(0.0f, 0.0f,"
	.ascii	" -1.0f)\015\012);\015\012\015\012vec3 get_texco(vec"
	.ascii	"2 uvs, vec2 ofs)\015\012{\015\012\011uvs += ofs;\015"
	.ascii	"\012\011return majorAxis[faceId] + uvs.x * minorAxi"
	.ascii	"sX[faceId] + uvs.y * minorAxisY[faceId];\015\012}\015"
	.ascii	"\012#endif\015\012\015\012void main() {\015\012\011"
	.ascii	"/* Copy the depth only shadowmap into another textu"
	.ascii	"re while converting\015\012\011 * to linear depth a"
	.ascii	"nd do a 3x3 box blur. */\015\012\015\012#ifdef CSM\015"
	.ascii	"\012\011vec2 uvs = gl_FragCoord.xy * storedTexelSiz"
	.ascii	"e;\015\012#else /* CUBEMAP */\015\012\011vec2 uvs ="
	.ascii	" gl_FragCoord.xy * cubeTexelSize * 2.0 - 1.0;\015\012"
	.ascii	"#endif\015\012\015\012\011/* Center texel */\015\012"
	.ascii	"\011vec3 co = get_texco(uvs, vec2(0.0));\015\012\011"
	.ascii	"float depth = texture(shadowTexture, co).r;\015\012"
	.ascii	"\011depth = get_world_distance(depth, co);\015\012\015"
	.ascii	"\012\011if (shadowFilterSize == 0.0) {\015\012#ifde"
	.ascii	"f ESM\015\012\011\011FragColor = vec4(depth);\015\012"
	.ascii	"#else /* VSM */\015\012\011\011FragColor = vec2("
	.ascii	"depth, depth * depth).xyxy;\015\012#endif\015\012\011"
	.ascii	"\011return;\015\012\011}\015\012\015\012#ifdef ESM\015"
	.ascii	"\012\011float accum = 1.0;\015\012\011float ref = d"
	.ascii	"epth;\015\012#else /* VSM */\015\012\011float ref ="
	.ascii	" 0.0; /* UNUSED */\015\012\011vec2 accum = vec2(dep"
	.ascii	"th, depth * depth) * SAMPLE_WEIGHT;\015\012#endif\015"
	.ascii	"\012\015\012#ifdef CSM\015\012\011vec3 ofs = vec3(1"
	.ascii	".0, 0.0, -1.0) * shadowFilterSize;\015\012#else /* "
	.ascii	"CUBEMAP */\015\012\011vec3 ofs = vec3(1.0, 0.0, -1."
	.ascii	"0) * shadowFilterSize;\015\012#endif\015\012\015\012"
	.ascii	"\011vec3 cos[4];\015\012\011cos[0] = get_texco(uvs,"
	.ascii	" ofs.zz);\015\012\011cos[1] = get_texco(uvs, ofs.yz"
	.ascii	");\015\012\011cos[2] = get_texco(uvs, ofs.xz);\015\012"
	.ascii	"\011cos[3] = get_texco(uvs, ofs.zy);\015\012\015\012"
	.ascii	"\011vec4 depths;\015\012\011depths.x = texture(shad"
	.ascii	"owTexture, cos[0]).r;\015\012\011depths.y = texture"
	.ascii	"(shadowTexture, cos[1]).r;\015\012\011depths.z = te"
	.ascii	"xture(shadowTexture, cos[2]).r;\015\012\011depths.w"
	.ascii	" = texture(shadowTexture, cos[3]).r;\015\012\011dep"
	.ascii	"ths = get_world_distance(depths, cos);\015\012\011p"
	.ascii	"refilter(depths, ref, accum);\015\012\015\012\011co"
	.ascii	"s[0] = get_texco(uvs, ofs.xy);\015\012\011cos[1] = "
	.ascii	"get_texco(uvs, ofs.zx);\015\012\011cos[2] = get_tex"
	.ascii	"co(uvs, ofs.yx);\015\012\011cos[3] = get_texco(uvs,"
	.ascii	" ofs.xx);\015\012\011depths.x = texture(shadowTextu"
	.ascii	"re, cos[0]).r;\015\012\011depths.y = texture(shadow"
	.ascii	"Texture, cos[1]).r;\015\012\011depths.z = texture(s"
	.ascii	"hadowTexture, cos[2]).r;\015\012\011depths.w = text"
	.ascii	"ure(shadowTexture, cos[3]).r;\015\012\011depths = g"
	.ascii	"et_world_distance(depths, cos);\015\012\011prefilte"
	.ascii	"r(depths, ref, accum);\015\012\015\012#ifdef ESM\015"
	.ascii	"\012\011accum = ln_space_prefilter_finalize(ref, ac"
	.ascii	"cum);\015\012#endif\015\012\015\012\011FragColor = "
	.ascii	"vec2(accum).xyxy;\015\012}\015\012\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
