revised vertext generation