added holdout functinality