Should really get my own private copy of the functions.