add versoin check