#3 refactor vcs