extensible enum application