Semi-workable solution
Distinguishing between enum and type