add dependancy check