more graph functionality