add functions and object