async def METHOD_NAME(amodel: CorpusActionModel, req: KRequest, resp: KResponse):
    """
    Provides a map (struct_name=>[list of attributes]). This is used
    by 'insert within' widget.
    """
    speech_segment = (await amodel.get_corpus_info(amodel.args.corpname)).speech_segment
    ans = defaultdict(lambda: [])
    for item in amodel.corp.get_structattrs():
        if item != speech_segment:
            k, v = item.split('.')
            ans[k].append(v)
    return dict(structattrs=dict((k, v) for k, v in list(ans.items()) if len(v) > 0))