supports install and reinstall