Improve vertex implementation