enhance setup script