adding descendants method