add functions for first time