produces wrappings for enum