Vj events refactor

This PR tries to cover all case described on the Vj Example spreadsheet