@lru_cache()
def get_available_activity(display_type=None):
    activity_infos = get_activity_infos()
    name_set = set()
    for (aid, info) in activity_infos.items():
        if (info.get('displayType') in {'SIDESTORY', 'BRANCHLINE'}):
            if ((info['displayType'] == 'BRANCHLINE') or info.get('isReplicate')):
                raw_name = (info['name'][:(- 3)] if info.get('isReplicate') else info['name'])
                if ((display_type is None) or (display_type == info['displayType'])):
                    name_set.add(raw_name)
    return name_set
@lru_cache()
def get_available_activity(display_type=None):
    activity_infos = get_activity_infos()
    name_set = set()
    for (aid, info) in activity_infos.items():
        if (info.get('displayType') in {'SIDESTORY', 'BRANCHLINE'}):
            if ((info['displayType'] == 'BRANCHLINE') or info.get('isReplicate')):
                raw_name = (info['name'][:(- 3)] if info.get('isReplicate') else info['name'])
                if ((display_type is None) or (display_type == info['displayType'])):
                    name_set.add(raw_name)
    return name_set