new stl with enum for type added