implemented graph hard update