mostly working version checker