first check version