worked on functions more