Added new descendant function