SUBROUTINE ENDSYM()
IMPLICIT NONE
character(*), parameter :: this_routine = 'EndSym'
if (allocated(SymTable)) then
deallocate(SymTable)
call LogMemDealloc(this_routine, tagSymTable)
end if
if (allocated(SymConjTab)) then
deallocate(SymConjTab)
call LogMemDealloc(this_routine, tagSymConjTab)
end if
if (allocated(SymReps)) then
deallocate(SymReps)
call LogMemDealloc(this_routine, tagSymReps)
end if
if (associated(SymClasses)) then
deallocate(SymClasses)
call LogMemDealloc(this_routine, tagSymClasses)
end if
nullify (SymClasses)
if (associated(SymClasses2)) then
deallocate(SymClasses2)
call LogMemDealloc(this_routine, tagSymClasses2)
end if
nullify (SymClasses2)
if (allocated(SymLabels)) then
deallocate(SymLabels)
call LogMemDealloc(this_routine, tagSymLabels)
end if
if (allocated(SymLabelChars)) then
deallocate(SymLabelChars)
call LogMemDealloc(this_routine, tagSymLabelChars)
end if
if (allocated(IRREPCHARS)) then
deallocate(IRREPCHARS)
call LogMemDealloc(this_routine, tagIRREPCHARS)
end if
if (allocated(SymStatePairs)) then
deallocate(SymStatePairs)
call LogMemDealloc(this_routine, tagSymStatePairs)
end if
if (allocated(SymLabelList)) then
deallocate(SymLabelList)
call LogMemDealloc(this_routine, tagSymLabelList)
end if
if (allocated(SymLabelCounts)) then
deallocate(SymLabelCounts)
call LogMemDealloc(this_routine, tagSymLabelCounts)
end if
if (associated(SymIndex)) then
deallocate(SymIndex)
call LogMemDealloc(this_routine, tagSymIndex)
end if
if (associated(SymIndex2)) then
deallocate(SymIndex2)
call LogMemDealloc(this_routine, tagSymIndex2)
end if
if (allocated(SymLabelList2)) then
deallocate(SymLabelList2)
end if
if (allocated(SymLabelCounts2)) then
deallocate(SymLabelCounts2)
end if
if (allocated(OrbClassCount)) then
deallocate(OrbClassCount)
end if
if (allocated(SymPairProds)) then
deallocate(SymPairProds)
call LogMemDealloc(this_routine, tagSymPairProds)
end if
END SUBROUTINE ENDSYM