почему валид не принимает (код сокращенно)
public class Solution {
static List<Human> listHuman = new ArrayList<Human>();
   public static void main(String[] args) {
//создание всех нужных объектов типа Human
// hum1, hum2, hum3 - дети
        Human mother = new Human(arg1, arg2, arg3, hum1, hum2, hum3));
        for (Human human : listHuman){
            System.out.println(human);
        }
    }
public static class Human {
//поля
       public Human (String arg1, boolean arg2, int arg3, Human ... children){
//установка значений полей
              listHuman.add(this);
}
но принимает (код сокращенно)
public class Solution {
   public static void main(String[] args) {
//создание всех нужных объектов типа Human
//создание и добавление детей в аррейлист
        Human child1 = new Human(args1, args2, args3,  arrayListChildren);
//вывод всех объектов типа Human
         System.out.println(human);
    }
   public static class Human {
//поля
//установка значений полей через конструктор
   }
два варианта выдают одинаковый результат, но первый не проходит валидацию