better setup script