moving require checking into validation