Changed an auto typename from reference
Changed the enums to nonstatic