parents field declared as Vector{Any} to avoid convert errors