added interface for structures