use virtus instead of active_attr