updated to LinkedHashSet to preserve insertion order for go annotations