add checkversion()