basic functions
first edition