fixed to use requireChildren