raise Exception if version is not found
refactor version control