graph stuff
happy merging