fix bug on passing vw as struct