add enum support