Turns out all three major functions need to be stored separately, so ...