'Will return any first-generation descendant items of this item.'

@property
def children(self):

    descendants = self.q(css=self._bounded_selector(self.BODY_SELECTOR)).map((lambda el: CourseOutlineChild(self.browser, el.get_attribute('data-locator')))).results
    grandkids = []
    for descendant in descendants:
        grandkids.extend(descendant.children)
    grand_locators = [grandkid.locator for grandkid in grandkids]
    return [descendant for descendant in descendants if (descendant.locator not in grand_locators)]
