predecessor/descendant fix