+ implemented ancestor checking functions to check against multiple ancestor branches