starts function definitions