Draft of the basic functions.