add functions #1