add and fix typeconstrained child iterators