setup script improved