enums support templates