Derive Enum and Bounded for Assosiativity