enumeratum
Finds any [A] in the current scope and returns an expression for a list of them
Given an A, provides its companion