Re-implement init and prep.