text: #include "list.h"
  #include "utils.h"
  
  
  
  /**
   * @brief Functie ce creaza un nod prin alocare dinamica 
   * si returneaza pointerul nodului creat. 
   * 
   * @param number - numarul pe care il are copilul
   * @param name - numele copilului
   * @param next  - adresa urmatorului nod
   * @return childNode* - nou nod creat
   */
  childNode *makeChildNode(int number, const char *name, childNode *next)
  {
      //TODO3.1: primul pas in implementarea cerintei 3
  }
  
  
  
  
  /**
   * @brief Functie ce returneaza o lista nou creata cu ajutorul
   * datelor citite din fisier-ul file primit ca parametru
   * 
   * Hint:
   *      * folositi-va de metoda makeChildNode pentru a crea lista
   *      * fscanf returneaza EOF in cazul in care se ajunge la
   *        sfarsitul fisierului => while(fscanf(...)!=EOF) va va 
   *        ajuta sa parcurgeti fisierul
   * 
   * @param file - fisierul ce trebuie citit
   * @return childNode* 
   */
  childNode *makeCircularList(FILE *file)
  {
      //TODO2.2: al doilea pas in implementarea cerintei 3
  }
  
  
  /**
   * @brief Functie ce 
   * 
   * @param head - capul listei ce reprezinta cercul de copii
   * @param p - pasul ce va fi luat pentru eliminarea copiilor
   * @return childNode* 
   */
  childNode *playJosephGame(childNode *head, int p)
  {
      // TODO3.3: se va return o lista creata prin adaugarea 
      // cu complexitatea O(1) a copiilor in ordinea in care 
      // sunt eliminati
  }