def METHOD_NAME(collection, used_ids, suffix):
    eo_objects = models.EOObject.objects.filter(
        collections__in=[collection.pk]
    ).exclude(
        pk__in=used_ids
    )
    result = []
    for eo_object in eo_objects:
        used_ids.add(eo_object.pk)
        if models.iscoverage(eo_object):
            result.append((eo_object.cast(), suffix))
        elif models.iscollection(eo_object):
            result.extend(
                METHOD_NAME(eo_object, used_ids, suffix)
            )
        else:
            pass
    return result