	.file	"967078.c"
	.intel_syntax noprefix
	.text
	.globl	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size
	.data
	.align 4
	.type	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size, @object
	.size	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size, 4
datatoc_gpu_shader_gpencil_stroke_geom_glsl_size:
	.long	5903
	.globl	datatoc_gpu_shader_gpencil_stroke_geom_glsl
	.align 32
	.type	datatoc_gpu_shader_gpencil_stroke_geom_glsl, @object
	.size	datatoc_gpu_shader_gpencil_stroke_geom_glsl, 5904
datatoc_gpu_shader_gpencil_stroke_geom_glsl:
	.ascii	"uniform mat4 ModelViewProjectionMatrix;\r\nuniform vec2 View"
	.ascii	"port;\r\nuniform int xraymode;\r\n\r\nlayout(lines_adjacency"
	.ascii	") in;\r\nlayout(triangle_strip, max_vertices = 13) out;\r\n\r"
	.ascii	"\nin vec4 finalColor[4];\r\nin float finalThickness[4];\r\n\r"
	.ascii	"\nout vec4 mColor;\r\nout vec2 mTexCoord;\r\n\r\n#define GP_"
	.ascii	"XRAY_FRONT 0\r\n#define GP_XRAY_3DSPACE 1\r\n#define GP_XRAY"
	.ascii	"_BACK  2\r\n\r\n/* project 3d point to 2d on screen space */"
	.ascii	"\r\nvec2 toScreenSpace(vec4 vertex)\r\n{\r\n\treturn vec2(ve"
	.ascii	"rtex.xy / vertex.w) * Viewport;\r\n}\r\n\r\n/* get zdepth va"
	.ascii	"lue */\r\nfloat getZdepth(vec4 point)\r\n{\r\n\tif (xraymode"
	.ascii	" == GP_XRAY_FRONT) {\r\n\t\treturn 0.0;\r\n\t}\r\n\tif (xray"
	.ascii	"mode == GP_XRAY_3DSPACE) {\r\n\t\treturn (point.z / point.w)"
	.ascii	";\r\n\t}\r\n\tif  (xraymode == GP_XRAY_BACK) {\r\n\t\treturn"
	.ascii	" 1.0;\r\n\t}\r\n\r\n\t/* in front by default */\r\n\treturn "
	.ascii	"0.0;\r\n}\r\nvoid main(void)\r\n{\r\n\tfloat MiterLimit = 0."
	.ascii	"75;\r\n\r\n\t/* receive 4 points */\r\n\tvec4 P0 = gl_in[0]."
	.ascii	"gl_Position;\r\n\tvec4 P1 = gl_in[1].gl_Position;\r\n\tvec4 "
	.ascii	"P2 = gl_in[2].gl_Position;\r\n\tvec4 P3 = gl_in[3].gl_Positi"
	.ascii	"on;\r\n\r\n\t/* get the four vertices passed to the shader *"
	.ascii	"/\r\n\tvec2 sp0 = toScreenSpace(P0);\t// start of previous s"
	.ascii	"egment\r\n\tvec2 sp1 = toScreenSpace(P1);\t// end of previou"
	.ascii	"s segment, start of current segment\r\n\tvec2 sp2 = toScreen"
	.ascii	"Space(P2);\t// end of current segment, start of next segment"
	.ascii	"\r\n\tvec2 sp3 = toScreenSpace(P3);   // end of next segment"
	.ascii	"\r\n\r\n\t/* culling outside viewport */\r\n\tvec2 area = Vi"
	.ascii	"ewport * 4.0;\r\n\tif (sp1.x < -area.x || sp1.x > area.x) re"
	.ascii	"turn;\r\n\tif (sp1.y < -area.y || sp1.y > area.y) return;\r\n"
	.ascii	"\tif (sp2.x < -area.x || sp2.x > area.x) return;\r\n\tif (sp"
	.ascii	"2.y < -area.y || sp2.y > area.y) return;\r\n\r\n\t/* determi"
	.ascii	"ne the direction of each of the 3 segments (previous, curren"
	.ascii	"t, next) */\r\n\tvec2 v0 = normalize(sp1 - sp0);\r\n\tvec2 v"
	.ascii	"1 = normalize(sp2 - sp1);\r\n\tvec2 v2 = normalize(sp3 - sp2"
	.ascii	");\r\n\r\n\t/* determine the normal of each of the 3 segment"
	.ascii	"s (previous, current, next) */\r\n\tvec2 n0 = vec2(-v0.y, v0"
	.ascii	".x);\r\n\tvec2 n1 = vec2(-v1.y, v1.x);\r\n\tvec2 n2 = vec2(-"
	.ascii	"v2.y, v2.x);\r\n\r\n\t/* determine miter lines by averaging "
	.ascii	"the normals of the 2 segm"
	.ascii	"ents */\r\n\tvec2 miter_a = normalize(n0 + n1);\t// miter at"
	.ascii	" start of current segment\r\n\tvec2 miter_b = normalize(n1 +"
	.ascii	" n2);  // miter at end of current segment\r\n\r\n\t/* determ"
	.ascii	"ine the length of the miter by projecting it onto normal and"
	.ascii	" then inverse it */\r\n\tfloat an1 = dot(miter_a, n1);\r\n\t"
	.ascii	"float bn1 = dot(miter_b, n2);\r\n\tif (an1 == 0) an1 = 1;\r\n"
	.ascii	"\tif (bn1 == 0) bn1 = 1;\r\n\tfloat length_a = finalThicknes"
	.ascii	"s[1] / an1;\r\n\tfloat length_b = finalThickness[2] / bn1;\r"
	.ascii	"\n\tif (length_a <= 0.0) length_a = 0.01;\r\n\tif (length_b "
	.ascii	"<= 0.0) length_b = 0.01;\r\n\r\n\t/* prevent excessively lon"
	.ascii	"g miters at sharp corners */\r\n\tif (dot(v0, v1) < -MiterLi"
	.ascii	"mit) {\r\n\t\tmiter_a = n1;\r\n\t\tlength_a = finalThickness"
	.ascii	"[1];\r\n\r\n\t\t/* close the gap */\r\n\t\tif (dot(v0, n1) >"
	.ascii	" 0) {\r\n\t\t\tmTexCoord = vec2(0, 0);\r\n\t\t\tmColor = fin"
	.ascii	"alColor[1];\r\n\t\t\tgl_Position = vec4((sp1 + finalThicknes"
	.ascii	"s[1] * n0) / Viewport, getZdepth(P1), 1.0);\r\n\t\t\tEmitVer"
	.ascii	"tex();\r\n\r\n\t\t\tmTexCoord = vec2(0, 0);\r\n\t\t\tmColor "
	.ascii	"= finalColor[1];\r\n\t\t\tgl_Position = vec4((sp1 + finalThi"
	.ascii	"ckness[1] * n1) / Viewport, getZdepth(P1), 1.0);\r\n\t\t\tEm"
	.ascii	"itVertex();\r\n\r\n\t\t\tmTexCoord = vec2(0, 0.5);\r\n\t\t\t"
	.ascii	"mColor = finalColor[1];\r\n\t\t\tgl_Position = vec4(sp1 / Vi"
	.ascii	"ewport,  getZdepth(P1), 1.0);\r\n\t\t\tEmitVertex();\r\n\r\n"
	.ascii	"\t\t\tEndPrimitive();\r\n\t\t}\r\n\t\telse {\r\n\t\t\tmTexCo"
	.ascii	"ord = vec2(0, 1);\r\n\t\t\tmColor = finalColor[1];\r\n\t\t\t"
	.ascii	"gl_Position = vec4((sp1 - finalThickness[1] * n1) / Viewport"
	.ascii	", getZdepth(P1), 1.0);\r\n\t\t\tEmitVertex();\r\n\r\n\t\t\tm"
	.ascii	"TexCoord = vec2(0, 1);\r\n\t\t\tmColor = finalColor[1];\r\n\t"
	.ascii	"\t\tgl_Position = vec4((sp1 - finalThickness[1] * n0) / View"
	.ascii	"port, getZdepth(P1), 1.0);\r\n\t\t\tEmitVertex();\r\n\r\n\t\t"
	.ascii	"\tmTexCoord = vec2(0, 0.5);\r\n\t\t\tmColor = finalColor[1];"
	.ascii	"\r\n\t\t\tgl_Position = vec4(sp1 / Viewport, getZdepth(P1), "
	.ascii	"1.0);\r\n\t\t\tEmitVertex();\r\n\r\n\t\t\tEndPrimitive();\r\n"
	.ascii	"\t\t}\r\n\t}\r\n\r\n\tif (dot(v1, v2) < -MiterLimit) {\r\n\t"
	.ascii	"\tmiter_b = n1;\r\n\t\tlength_b = finalThickness[2];\r\n\t}\r"
	.ascii	"\n\r\n\t/* generate the start endcap (alpha < 0 used as endc"
	.ascii	"ap flag)*/\r\n\tif (P0 == P2) {\r\n\t\tmTexCoord = vec2(1, 0"
	.ascii	".5);\r\n\t\tmColor = vec4(finalColor[1].rgb, finalColor[1].a"
	.ascii	" * -1.0) ;\r\n\t\tvec2 svn1 = "
	.ascii	" normalize(sp1 - sp2) * length_a * 4.0;\r\n\t\tgl_Position ="
	.ascii	" vec4((sp1 + svn1) / Viewport, getZdepth(P1), 1.0);\r\n\t\tE"
	.ascii	"mitVertex();\r\n\r\n\t\tmTexCoord = vec2(0, 0);\r\n\t\tmColo"
	.ascii	"r = vec4(finalColor[1].rgb, finalColor[1].a * -1.0) ;\r\n\t\t"
	.ascii	"gl_Position = vec4((sp1 - (length_a * 2.0) * miter_a) / View"
	.ascii	"port, getZdepth(P1), 1.0);\r\n\t\tEmitVertex();\r\n\r\n\t\tm"
	.ascii	"TexCoord = vec2(0, 1);\r\n\t\tmColor = vec4(finalColor[1].rg"
	.ascii	"b, finalColor[1].a * -1.0) ;\r\n\t\tgl_Position = vec4((sp1 "
	.ascii	"+ (length_a * 2.0) * miter_a) / Viewport, getZdepth(P1), 1.0"
	.ascii	");\r\n\t\tEmitVertex();\r\n\t}\r\n\r\n\t/* generate the tria"
	.ascii	"ngle strip */\r\n\tmTexCoord = vec2(0, 0);\r\n\tmColor = fin"
	.ascii	"alColor[1];\r\n\tgl_Position = vec4((sp1 + length_a * miter_"
	.ascii	"a) / Viewport, getZdepth(P1), 1.0);\r\n\tEmitVertex();\r\n\r"
	.ascii	"\n\tmTexCoord = vec2(0, 1);\r\n\tmColor = finalColor[1];\r\n"
	.ascii	"\tgl_Position = vec4((sp1 - length_a * miter_a) / Viewport, "
	.ascii	"getZdepth(P1), 1.0);\r\n\tEmitVertex();\r\n\r\n\tmTexCoord ="
	.ascii	" vec2(0, 0);\r\n\tmColor = finalColor[2];\r\n\tgl_Position ="
	.ascii	" vec4((sp2 + length_b * miter_b) / Viewport, getZdepth(P2), "
	.ascii	"1.0);\r\n\tEmitVertex();\r\n\r\n\tmTexCoord = vec2(0, 1);\r\n"
	.ascii	"\tmColor = finalColor[2];\r\n\tgl_Position = vec4((sp2 - len"
	.ascii	"gth_b * miter_b) / Viewport, getZdepth(P2), 1.0);\r\n\tEmitV"
	.ascii	"ertex();\r\n\r\n\t/* generate the end endcap (alpha < 0 used"
	.ascii	" as endcap flag)*/\r\n\tif (P1 == P3) {\r\n\t\tmTexCoord = v"
	.ascii	"ec2(0, 1);\r\n\t\tmColor = vec4(finalColor[2].rgb, finalColo"
	.ascii	"r[2].a * -1.0) ;\r\n\t\tgl_Position = vec4((sp2 + (length_b "
	.ascii	"* 2.0) * miter_b) / Viewport, getZdepth(P2), 1.0);\r\n\t\tEm"
	.ascii	"itVertex();\r\n\r\n\t\tmTexCoord = vec2(0, 0);\r\n\t\tmColor"
	.ascii	" = vec4(finalColor[2].rgb, finalColor[2].a * -1.0) ;\r\n\t\t"
	.ascii	"gl_Position = vec4((sp2 - (length_b * 2.0) * miter_b) / View"
	.ascii	"port, getZdepth(P2), 1.0);\r\n\t\tEmitVertex();\r\n\r\n\t\t"
	.string	"mTexCoord = vec2(1, 0.5);\r\n\t\tmColor = vec4(finalColor[2].rgb, finalColor[2].a * -1.0) ;\r\n\t\tvec2 svn2 =  normalize(sp2 - sp1) * length_b * 4.0;\r\n\t\tgl_Position = vec4((sp2 + svn2) / Viewport, getZdepth(P2), 1.0);\r\n\t\tEmitVertex();\r\n\t}\r\n\r\n\tEndPrimitive();\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	"967078.c"
	.text
	.global	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size
	.data
	.align	2
	.type	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size, %object
	.size	datatoc_gpu_shader_gpencil_stroke_geom_glsl_size, 4
datatoc_gpu_shader_gpencil_stroke_geom_glsl_size:
	.word	5903
	.global	datatoc_gpu_shader_gpencil_stroke_geom_glsl
	.align	2
	.type	datatoc_gpu_shader_gpencil_stroke_geom_glsl, %object
	.size	datatoc_gpu_shader_gpencil_stroke_geom_glsl, 5904
datatoc_gpu_shader_gpencil_stroke_geom_glsl:
	.ascii	"uniform mat4 ModelViewProjectionMatrix;\015\012unif"
	.ascii	"orm vec2 Viewport;\015\012uniform int xraymode;\015"
	.ascii	"\012\015\012layout(lines_adjacency) in;\015\012layo"
	.ascii	"ut(triangle_strip, max_vertices = 13) out;\015\012\015"
	.ascii	"\012in vec4 finalColor[4];\015\012in float finalThi"
	.ascii	"ckness[4];\015\012\015\012out vec4 mColor;\015\012o"
	.ascii	"ut vec2 mTexCoord;\015\012\015\012#define GP_XRAY_F"
	.ascii	"RONT 0\015\012#define GP_XRAY_3DSPACE 1\015\012#def"
	.ascii	"ine GP_XRAY_BACK  2\015\012\015\012/* project 3d po"
	.ascii	"int to 2d on screen space */\015\012vec2 toScreenSp"
	.ascii	"ace(vec4 vertex)\015\012{\015\012\011return vec2(ve"
	.ascii	"rtex.xy / vertex.w) * Viewport;\015\012}\015\012\015"
	.ascii	"\012/* get zdepth value */\015\012float getZdepth(v"
	.ascii	"ec4 point)\015\012{\015\012\011if (xraymode == GP_X"
	.ascii	"RAY_FRONT) {\015\012\011\011return 0.0;\015\012\011"
	.ascii	"}\015\012\011if (xraymode == GP_XRAY_3DSPACE) {\015"
	.ascii	"\012\011\011return (point.z / point.w);\015\012\011"
	.ascii	"}\015\012\011if  (xraymode == GP_XRAY_BACK) {\015\012"
	.ascii	"\011\011return 1.0;\015\012\011}\015\012\015\012\011"
	.ascii	"/* in front by default */\015\012\011return 0.0;\015"
	.ascii	"\012}\015\012void main(void)\015\012{\015\012\011fl"
	.ascii	"oat MiterLimit = 0.75;\015\012\015\012\011/* receiv"
	.ascii	"e 4 points */\015\012\011vec4 P0 = gl_in[0].gl_Posi"
	.ascii	"tion;\015\012\011vec4 P1 = gl_in[1].gl_Position;\015"
	.ascii	"\012\011vec4 P2 = gl_in[2].gl_Position;\015\012\011"
	.ascii	"vec4 P3 = gl_in[3].gl_Position;\015\012\015\012\011"
	.ascii	"/* get the four vertices passed to the shader */\015"
	.ascii	"\012\011vec2 sp0 = toScreenSpace(P0);\011// start o"
	.ascii	"f previous segment\015\012\011vec2 sp1 = toScreenSp"
	.ascii	"ace(P1);\011// end of previous segment, start of cu"
	.ascii	"rrent segment\015\012\011vec2 sp2 = toScreenSpace(P"
	.ascii	"2);\011// end of current segment, start of next seg"
	.ascii	"ment\015\012\011vec2 sp3 = toScreenSpace(P3);   // "
	.ascii	"end of next segment\015\012\015\012\011/* culling o"
	.ascii	"utside viewport */\015\012\011vec2 area = Viewport "
	.ascii	"* 4.0;\015\012\011if (sp1.x < -area.x || sp1.x > ar"
	.ascii	"ea.x) return;\015\012\011if (sp1.y < -area.y || sp1"
	.ascii	".y > area.y) return;\015\012\011if (sp2.x < -area.x"
	.ascii	" || sp2.x > area.x) return;\015\012\011if (sp2.y < "
	.ascii	"-area.y || sp2.y > area.y) return;\015\012\015\012\011"
	.ascii	"/* determine the direction of each of the 3 segment"
	.ascii	"s (previous, current, next) */\015\012\011vec2 v0 ="
	.ascii	" normalize(sp1 - sp0);\015\012\011vec2 v1 = normali"
	.ascii	"ze(sp2 - sp1);\015\012\011vec2 v2 = normalize(sp3 -"
	.ascii	" sp2);\015\012\015\012\011/* determine the normal o"
	.ascii	"f each of the 3 segments (previous, current, next) "
	.ascii	"*/\015\012\011vec2 n0 = vec2(-v0.y, v0.x);\015\012\011"
	.ascii	"vec2 n1 = vec2(-v1.y, v1.x);\015\012\011vec2 n2 = v"
	.ascii	"ec2(-v2.y, v2.x);\015\012\015\012\011/* determine m"
	.ascii	"iter lines by averaging the normals of the 2 segm"
	.ascii	"ents */\015\012\011vec2 miter_a = normalize(n0 + n1"
	.ascii	");\011// miter at start of current segment\015\012\011"
	.ascii	"vec2 miter_b = normalize(n1 + n2);  // miter at end"
	.ascii	" of current segment\015\012\015\012\011/* determine"
	.ascii	" the length of the miter by projecting it onto norm"
	.ascii	"al and then inverse it */\015\012\011float an1 = do"
	.ascii	"t(miter_a, n1);\015\012\011float bn1 = dot(miter_b,"
	.ascii	" n2);\015\012\011if (an1 == 0) an1 = 1;\015\012\011"
	.ascii	"if (bn1 == 0) bn1 = 1;\015\012\011float length_a = "
	.ascii	"finalThickness[1] / an1;\015\012\011float length_b "
	.ascii	"= finalThickness[2] / bn1;\015\012\011if (length_a "
	.ascii	"<= 0.0) length_a = 0.01;\015\012\011if (length_b <="
	.ascii	" 0.0) length_b = 0.01;\015\012\015\012\011/* preven"
	.ascii	"t excessively long miters at sharp corners */\015\012"
	.ascii	"\011if (dot(v0, v1) < -MiterLimit) {\015\012\011\011"
	.ascii	"miter_a = n1;\015\012\011\011length_a = finalThickn"
	.ascii	"ess[1];\015\012\015\012\011\011/* close the gap */\015"
	.ascii	"\012\011\011if (dot(v0, n1) > 0) {\015\012\011\011\011"
	.ascii	"mTexCoord = vec2(0, 0);\015\012\011\011\011mColor ="
	.ascii	" finalColor[1];\015\012\011\011\011gl_Position = ve"
	.ascii	"c4((sp1 + finalThickness[1] * n0) / Viewport, getZd"
	.ascii	"epth(P1), 1.0);\015\012\011\011\011EmitVertex();\015"
	.ascii	"\012\015\012\011\011\011mTexCoord = vec2(0, 0);\015"
	.ascii	"\012\011\011\011mColor = finalColor[1];\015\012\011"
	.ascii	"\011\011gl_Position = vec4((sp1 + finalThickness[1]"
	.ascii	" * n1) / Viewport, getZdepth(P1), 1.0);\015\012\011"
	.ascii	"\011\011EmitVertex();\015\012\015\012\011\011\011mT"
	.ascii	"exCoord = vec2(0, 0.5);\015\012\011\011\011mColor ="
	.ascii	" finalColor[1];\015\012\011\011\011gl_Position = ve"
	.ascii	"c4(sp1 / Viewport,  getZdepth(P1), 1.0);\015\012\011"
	.ascii	"\011\011EmitVertex();\015\012\015\012\011\011\011En"
	.ascii	"dPrimitive();\015\012\011\011}\015\012\011\011else "
	.ascii	"{\015\012\011\011\011mTexCoord = vec2(0, 1);\015\012"
	.ascii	"\011\011\011mColor = finalColor[1];\015\012\011\011"
	.ascii	"\011gl_Position = vec4((sp1 - finalThickness[1] * n"
	.ascii	"1) / Viewport, getZdepth(P1), 1.0);\015\012\011\011"
	.ascii	"\011EmitVertex();\015\012\015\012\011\011\011mTexCo"
	.ascii	"ord = vec2(0, 1);\015\012\011\011\011mColor = final"
	.ascii	"Color[1];\015\012\011\011\011gl_Position = vec4((sp"
	.ascii	"1 - finalThickness[1] * n0) / Viewport, getZdepth(P"
	.ascii	"1), 1.0);\015\012\011\011\011EmitVertex();\015\012\015"
	.ascii	"\012\011\011\011mTexCoord = vec2(0, 0.5);\015\012\011"
	.ascii	"\011\011mColor = finalColor[1];\015\012\011\011\011"
	.ascii	"gl_Position = vec4(sp1 / Viewport, getZdepth(P1), 1"
	.ascii	".0);\015\012\011\011\011EmitVertex();\015\012\015\012"
	.ascii	"\011\011\011EndPrimitive();\015\012\011\011}\015\012"
	.ascii	"\011}\015\012\015\012\011if (dot(v1, v2) < -MiterLi"
	.ascii	"mit) {\015\012\011\011miter_b = n1;\015\012\011\011"
	.ascii	"length_b = finalThickness[2];\015\012\011}\015\012\015"
	.ascii	"\012\011/* generate the start endcap (alpha < 0 use"
	.ascii	"d as endcap flag)*/\015\012\011if (P0 == P2) {\015\012"
	.ascii	"\011\011mTexCoord = vec2(1, 0.5);\015\012\011\011mC"
	.ascii	"olor = vec4(finalColor[1].rgb, finalColor[1].a * -1"
	.ascii	".0) ;\015\012\011\011vec2 svn1 = "
	.ascii	" normalize(sp1 - sp2) * length_a * 4.0;\015\012\011"
	.ascii	"\011gl_Position = vec4((sp1 + svn1) / Viewport, get"
	.ascii	"Zdepth(P1), 1.0);\015\012\011\011EmitVertex();\015\012"
	.ascii	"\015\012\011\011mTexCoord = vec2(0, 0);\015\012\011"
	.ascii	"\011mColor = vec4(finalColor[1].rgb, finalColor[1]."
	.ascii	"a * -1.0) ;\015\012\011\011gl_Position = vec4((sp1 "
	.ascii	"- (length_a * 2.0) * miter_a) / Viewport, getZdepth"
	.ascii	"(P1), 1.0);\015\012\011\011EmitVertex();\015\012\015"
	.ascii	"\012\011\011mTexCoord = vec2(0, 1);\015\012\011\011"
	.ascii	"mColor = vec4(finalColor[1].rgb, finalColor[1].a * "
	.ascii	"-1.0) ;\015\012\011\011gl_Position = vec4((sp1 + (l"
	.ascii	"ength_a * 2.0) * miter_a) / Viewport, getZdepth(P1)"
	.ascii	", 1.0);\015\012\011\011EmitVertex();\015\012\011}\015"
	.ascii	"\012\015\012\011/* generate the triangle strip */\015"
	.ascii	"\012\011mTexCoord = vec2(0, 0);\015\012\011mColor ="
	.ascii	" finalColor[1];\015\012\011gl_Position = vec4((sp1 "
	.ascii	"+ length_a * miter_a) / Viewport, getZdepth(P1), 1."
	.ascii	"0);\015\012\011EmitVertex();\015\012\015\012\011mTe"
	.ascii	"xCoord = vec2(0, 1);\015\012\011mColor = finalColor"
	.ascii	"[1];\015\012\011gl_Position = vec4((sp1 - length_a "
	.ascii	"* miter_a) / Viewport, getZdepth(P1), 1.0);\015\012"
	.ascii	"\011EmitVertex();\015\012\015\012\011mTexCoord = ve"
	.ascii	"c2(0, 0);\015\012\011mColor = finalColor[2];\015\012"
	.ascii	"\011gl_Position = vec4((sp2 + length_b * miter_b) /"
	.ascii	" Viewport, getZdepth(P2), 1.0);\015\012\011EmitVert"
	.ascii	"ex();\015\012\015\012\011mTexCoord = vec2(0, 1);\015"
	.ascii	"\012\011mColor = finalColor[2];\015\012\011gl_Posit"
	.ascii	"ion = vec4((sp2 - length_b * miter_b) / Viewport, g"
	.ascii	"etZdepth(P2), 1.0);\015\012\011EmitVertex();\015\012"
	.ascii	"\015\012\011/* generate the end endcap (alpha < 0 u"
	.ascii	"sed as endcap flag)*/\015\012\011if (P1 == P3) {\015"
	.ascii	"\012\011\011mTexCoord = vec2(0, 1);\015\012\011\011"
	.ascii	"mColor = vec4(finalColor[2].rgb, finalColor[2].a * "
	.ascii	"-1.0) ;\015\012\011\011gl_Position = vec4((sp2 + (l"
	.ascii	"ength_b * 2.0) * miter_b) / Viewport, getZdepth(P2)"
	.ascii	", 1.0);\015\012\011\011EmitVertex();\015\012\015\012"
	.ascii	"\011\011mTexCoord = vec2(0, 0);\015\012\011\011mCol"
	.ascii	"or = vec4(finalColor[2].rgb, finalColor[2].a * -1.0"
	.ascii	") ;\015\012\011\011gl_Position = vec4((sp2 - (lengt"
	.ascii	"h_b * 2.0) * miter_b) / Viewport, getZdepth(P2), 1."
	.ascii	"0);\015\012\011\011EmitVertex();\015\012\015\012\011"
	.ascii	"\011mTexCoord = vec2(1, 0.5);\015\012\011\011mColor"
	.ascii	" = vec4(finalColor[2].rgb, finalColor[2].a * -1.0) "
	.ascii	";\015\012\011\011vec2 svn2 =  normalize(sp2 - sp1) "
	.ascii	"* length_b * 4.0;\015\012\011\011gl_Position = vec4"
	.ascii	"((sp2 + svn2) / Viewport, getZdepth(P2), 1.0);\015\012"
	.ascii	"\011\011EmitVertex();\015\012\011}\015\012\015\012\011"
	.ascii	"EndPrimitive();\015\012}\015\012\000"
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
