vu refactor