contract version control