add functions.