${res:Templates.File.Structure.Description}
	
	
	
		
''' Description of ${ClassName}.
''' 
Public Structure ${ClassName}
	Implements IEquatable(Of ${ClassName})
	Private member As Integer
	' this is just an example member, replace it with your own struct members!
	#Region "Equals and GetHashCode implementation"
	' The code in this region is useful if you want to use this structure in collections.
	' If you don't need it, you can just remove the region and the "Implements IEquatable(Of ${ClassName})" declaration.
	Public Overrides Function Equals(obj As Object) As Boolean
		If TypeOf obj Is ${ClassName} Then
			Return Equals(CType(obj, ${ClassName}))
		Else
			' use Equals method below
			Return False
		End If
	End Function
	Public Overloads Function Equals(other As ${ClassName}) As Boolean
		' add comparisions for all members here
		Return Me.member = other.member
	End Function
	Public Overrides Function GetHashCode() As Integer
		' combine the hash codes of all members here (e.g. with XOr operator)
		Return member.GetHashCode()
	End Function
	Public Shared Operator =(left As ${ClassName}, right As ${ClassName}) As Boolean
		Return left.Equals(right)
	End Operator
	Public Shared Operator <>(left As ${ClassName}, right As ${ClassName}) As Boolean
		Return Not left.Equals(right)
	End Operator
	#End Region
End Structure
]]>