<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def crosslisting_feature(catalog, soup):
 """Parses all the crosslistings. These refer to the similar CRNs, such as a grad & undergrad level course. """

    listing = {}
    for elem in soup.coursedb.findAll('crosslisting'):
        seats = int(elem['seats'])
        crns = [safeInt(crn.string) for crn in elem.findAll('crn')]

        # we want to refer to the same object to save space
        cl = CrossListing(crns, seats)
        for crn in crns:
            listing[crn] = cl
    catalog.crosslistings = FrozenDict(listing)

    logger.info('Catalog has %d course crosslistings' % len(catalog.crosslistings))