434 lines
25 KiB
Plaintext
434 lines
25 KiB
Plaintext
hlsl.instance.geom
|
|
Shader version: 500
|
|
invocations = 5
|
|
max_vertices = 3
|
|
input primitive = triangles
|
|
output primitive = triangle_strip
|
|
0:? Sequence
|
|
0:10 Function Definition: @GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1; ( temp void)
|
|
0:10 Function Parameters:
|
|
0:10 'input' ( in 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 'output' ( out structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 'id' ( in uint)
|
|
0:? Sequence
|
|
0:12 Sequence
|
|
0:12 move second child to first child ( temp int)
|
|
0:12 'i' ( temp int)
|
|
0:12 Constant:
|
|
0:12 0 (const int)
|
|
0:12 Loop with condition tested first: DontUnroll
|
|
0:12 Loop Condition
|
|
0:12 Compare Less Than ( temp bool)
|
|
0:12 'i' ( temp int)
|
|
0:12 Constant:
|
|
0:12 3 (const int)
|
|
0:12 Loop Body
|
|
0:? Sequence
|
|
0:14 Sequence
|
|
0:14 Sequence
|
|
0:14 move second child to first child ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 indirect index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'input' ( in 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'i' ( temp int)
|
|
0:14 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'output.m_position' ( out 4-component vector of float Position)
|
|
0:14 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 Constant:
|
|
0:14 0 (const int)
|
|
0:14 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'output.m_color' (layout( location=0) out 4-component vector of float)
|
|
0:14 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 Constant:
|
|
0:14 1 (const int)
|
|
0:14 EmitVertex ( temp void)
|
|
0:12 Loop Terminal Expression
|
|
0:12 Pre-Increment ( temp int)
|
|
0:12 'i' ( temp int)
|
|
0:16 EndPrimitive ( temp void)
|
|
0:10 Function Definition: GeometryShader( ( temp void)
|
|
0:10 Function Parameters:
|
|
0:? Sequence
|
|
0:10 Sequence
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 move second child to first child ( temp uint)
|
|
0:? 'id' ( temp uint)
|
|
0:? 'id' ( in uint InvocationID)
|
|
0:10 Function Call: @GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1; ( temp void)
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'output' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'id' ( temp uint)
|
|
0:? Linker Objects
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:? 'id' ( in uint InvocationID)
|
|
0:? 'output.m_position' ( out 4-component vector of float Position)
|
|
0:? 'output.m_color' (layout( location=0) out 4-component vector of float)
|
|
|
|
|
|
Linked geometry stage:
|
|
|
|
|
|
Shader version: 500
|
|
invocations = 5
|
|
max_vertices = 3
|
|
input primitive = triangles
|
|
output primitive = triangle_strip
|
|
0:? Sequence
|
|
0:10 Function Definition: @GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1; ( temp void)
|
|
0:10 Function Parameters:
|
|
0:10 'input' ( in 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 'output' ( out structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 'id' ( in uint)
|
|
0:? Sequence
|
|
0:12 Sequence
|
|
0:12 move second child to first child ( temp int)
|
|
0:12 'i' ( temp int)
|
|
0:12 Constant:
|
|
0:12 0 (const int)
|
|
0:12 Loop with condition tested first: DontUnroll
|
|
0:12 Loop Condition
|
|
0:12 Compare Less Than ( temp bool)
|
|
0:12 'i' ( temp int)
|
|
0:12 Constant:
|
|
0:12 3 (const int)
|
|
0:12 Loop Body
|
|
0:? Sequence
|
|
0:14 Sequence
|
|
0:14 Sequence
|
|
0:14 move second child to first child ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 indirect index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'input' ( in 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 'i' ( temp int)
|
|
0:14 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'output.m_position' ( out 4-component vector of float Position)
|
|
0:14 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 Constant:
|
|
0:14 0 (const int)
|
|
0:14 move second child to first child ( temp 4-component vector of float)
|
|
0:? 'output.m_color' (layout( location=0) out 4-component vector of float)
|
|
0:14 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:14 'flattenTemp' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:14 Constant:
|
|
0:14 1 (const int)
|
|
0:14 EmitVertex ( temp void)
|
|
0:12 Loop Terminal Expression
|
|
0:12 Pre-Increment ( temp int)
|
|
0:12 'i' ( temp int)
|
|
0:16 EndPrimitive ( temp void)
|
|
0:10 Function Definition: GeometryShader( ( temp void)
|
|
0:10 Function Parameters:
|
|
0:? Sequence
|
|
0:10 Sequence
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_position: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 Constant:
|
|
0:10 0 (const int)
|
|
0:10 direct index ( in 4-component vector of float Position)
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 move second child to first child ( temp 4-component vector of float)
|
|
0:10 m_color: direct index for structure ( temp 4-component vector of float)
|
|
0:10 direct index ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 Constant:
|
|
0:10 1 (const int)
|
|
0:10 direct index (layout( location=0) in 4-component vector of float)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:10 Constant:
|
|
0:10 2 (const int)
|
|
0:10 move second child to first child ( temp uint)
|
|
0:? 'id' ( temp uint)
|
|
0:? 'id' ( in uint InvocationID)
|
|
0:10 Function Call: @GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1; ( temp void)
|
|
0:? 'input' ( temp 3-element array of structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'output' ( temp structure{ temp 4-component vector of float m_position, temp 4-component vector of float m_color})
|
|
0:? 'id' ( temp uint)
|
|
0:? Linker Objects
|
|
0:? 'input.m_position' ( in 3-element array of 4-component vector of float Position)
|
|
0:? 'input.m_color' (layout( location=0) in 3-element array of 4-component vector of float)
|
|
0:? 'id' ( in uint InvocationID)
|
|
0:? 'output.m_position' ( out 4-component vector of float Position)
|
|
0:? 'output.m_color' (layout( location=0) out 4-component vector of float)
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 86
|
|
|
|
Capability Geometry
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Geometry 4 "GeometryShader" 39 43 52 57 76
|
|
ExecutionMode 4 Triangles
|
|
ExecutionMode 4 Invocations 5
|
|
ExecutionMode 4 OutputTriangleStrip
|
|
ExecutionMode 4 OutputVertices 3
|
|
Source HLSL 500
|
|
Name 4 "GeometryShader"
|
|
Name 8 "VertexShaderOutput"
|
|
MemberName 8(VertexShaderOutput) 0 "m_position"
|
|
MemberName 8(VertexShaderOutput) 1 "m_color"
|
|
Name 19 "@GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1;"
|
|
Name 16 "input"
|
|
Name 17 "output"
|
|
Name 18 "id"
|
|
Name 23 "i"
|
|
Name 34 "flattenTemp"
|
|
Name 39 "output.m_position"
|
|
Name 43 "output.m_color"
|
|
Name 49 "input"
|
|
Name 52 "input.m_position"
|
|
Name 57 "input.m_color"
|
|
Name 74 "id"
|
|
Name 76 "id"
|
|
Name 78 "output"
|
|
Name 79 "param"
|
|
Name 81 "param"
|
|
Name 82 "param"
|
|
Decorate 39(output.m_position) BuiltIn Position
|
|
Decorate 43(output.m_color) Location 0
|
|
Decorate 52(input.m_position) BuiltIn Position
|
|
Decorate 57(input.m_color) Location 0
|
|
Decorate 76(id) BuiltIn InvocationId
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 4
|
|
8(VertexShaderOutput): TypeStruct 7(fvec4) 7(fvec4)
|
|
9: TypeInt 32 0
|
|
10: 9(int) Constant 3
|
|
11: TypeArray 8(VertexShaderOutput) 10
|
|
12: TypePointer Function 11
|
|
13: TypePointer Function 8(VertexShaderOutput)
|
|
14: TypePointer Function 9(int)
|
|
15: TypeFunction 2 12(ptr) 13(ptr) 14(ptr)
|
|
21: TypeInt 32 1
|
|
22: TypePointer Function 21(int)
|
|
24: 21(int) Constant 0
|
|
31: 21(int) Constant 3
|
|
32: TypeBool
|
|
38: TypePointer Output 7(fvec4)
|
|
39(output.m_position): 38(ptr) Variable Output
|
|
40: TypePointer Function 7(fvec4)
|
|
43(output.m_color): 38(ptr) Variable Output
|
|
44: 21(int) Constant 1
|
|
50: TypeArray 7(fvec4) 10
|
|
51: TypePointer Input 50
|
|
52(input.m_position): 51(ptr) Variable Input
|
|
53: TypePointer Input 7(fvec4)
|
|
57(input.m_color): 51(ptr) Variable Input
|
|
67: 21(int) Constant 2
|
|
75: TypePointer Input 9(int)
|
|
76(id): 75(ptr) Variable Input
|
|
4(GeometryShader): 2 Function None 3
|
|
5: Label
|
|
49(input): 12(ptr) Variable Function
|
|
74(id): 14(ptr) Variable Function
|
|
78(output): 13(ptr) Variable Function
|
|
79(param): 12(ptr) Variable Function
|
|
81(param): 13(ptr) Variable Function
|
|
82(param): 14(ptr) Variable Function
|
|
54: 53(ptr) AccessChain 52(input.m_position) 24
|
|
55: 7(fvec4) Load 54
|
|
56: 40(ptr) AccessChain 49(input) 24 24
|
|
Store 56 55
|
|
58: 53(ptr) AccessChain 57(input.m_color) 24
|
|
59: 7(fvec4) Load 58
|
|
60: 40(ptr) AccessChain 49(input) 24 44
|
|
Store 60 59
|
|
61: 53(ptr) AccessChain 52(input.m_position) 44
|
|
62: 7(fvec4) Load 61
|
|
63: 40(ptr) AccessChain 49(input) 44 24
|
|
Store 63 62
|
|
64: 53(ptr) AccessChain 57(input.m_color) 44
|
|
65: 7(fvec4) Load 64
|
|
66: 40(ptr) AccessChain 49(input) 44 44
|
|
Store 66 65
|
|
68: 53(ptr) AccessChain 52(input.m_position) 67
|
|
69: 7(fvec4) Load 68
|
|
70: 40(ptr) AccessChain 49(input) 67 24
|
|
Store 70 69
|
|
71: 53(ptr) AccessChain 57(input.m_color) 67
|
|
72: 7(fvec4) Load 71
|
|
73: 40(ptr) AccessChain 49(input) 67 44
|
|
Store 73 72
|
|
77: 9(int) Load 76(id)
|
|
Store 74(id) 77
|
|
80: 11 Load 49(input)
|
|
Store 79(param) 80
|
|
83: 9(int) Load 74(id)
|
|
Store 82(param) 83
|
|
84: 2 FunctionCall 19(@GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1;) 79(param) 81(param) 82(param)
|
|
85:8(VertexShaderOutput) Load 81(param)
|
|
Store 78(output) 85
|
|
Return
|
|
FunctionEnd
|
|
19(@GeometryShader(struct-VertexShaderOutput-vf4-vf41[3];struct-VertexShaderOutput-vf4-vf41;u1;): 2 Function None 15
|
|
16(input): 12(ptr) FunctionParameter
|
|
17(output): 13(ptr) FunctionParameter
|
|
18(id): 14(ptr) FunctionParameter
|
|
20: Label
|
|
23(i): 22(ptr) Variable Function
|
|
34(flattenTemp): 13(ptr) Variable Function
|
|
Store 23(i) 24
|
|
Branch 25
|
|
25: Label
|
|
LoopMerge 27 28 DontUnroll
|
|
Branch 29
|
|
29: Label
|
|
30: 21(int) Load 23(i)
|
|
33: 32(bool) SLessThan 30 31
|
|
BranchConditional 33 26 27
|
|
26: Label
|
|
35: 21(int) Load 23(i)
|
|
36: 13(ptr) AccessChain 16(input) 35
|
|
37:8(VertexShaderOutput) Load 36
|
|
Store 34(flattenTemp) 37
|
|
41: 40(ptr) AccessChain 34(flattenTemp) 24
|
|
42: 7(fvec4) Load 41
|
|
Store 39(output.m_position) 42
|
|
45: 40(ptr) AccessChain 34(flattenTemp) 44
|
|
46: 7(fvec4) Load 45
|
|
Store 43(output.m_color) 46
|
|
EmitVertex
|
|
Branch 28
|
|
28: Label
|
|
47: 21(int) Load 23(i)
|
|
48: 21(int) IAdd 47 44
|
|
Store 23(i) 48
|
|
Branch 25
|
|
27: Label
|
|
EndPrimitive
|
|
Return
|
|
FunctionEnd
|