parents only when necessary