added interface for graph