support enum  and dynamic in