put guard to skip setup if it has already been done... -sai