def METHOD_NAME(cls, comment: str) -> ModelGroup:
    """
    Correct:
    $ group: name='RLongeron MainFuseStruct Gridpoint'; nodes=167:205
    $ group: name='Skin MainFuseStruc'; elements=6001:15017
    $ group: name="ULFuseCanardAtch MainFuseStruct Fixed point constraints, 123"; spcs=3
    Incorrect:
    $ group: name="ULFuseCanardAtch MainFuseStruct Fixed point constraints; 123"; spcs=3    (semicolon in name)
    Unioned Groups (spcs becomes [1,2,3] internally):
    $ group: name="spcs"; spcs=1
    $ group: name="ULFuseCanardAtch MainFuseStruct Fixed point constraints, all"; spcs=1
    SPC1           1  123456      13
    $ group: name="spcs"; spcs=2
    $ group: name="ULFuseCanardAtch MainFuseStruct Fixed point constraints, 123456"; spcs=2
    SPC1           2  123456      13
    $ group: name="spcs"; spcs=3
    $ group: name="ULFuseCanardAtch MainFuseStruct Fixed point constraints, 123"; spcs=3
    SPC1           3  123         13
    """
    sline = [val.strip() for val in comment.strip().split(';')]
    group_dict = {}
    group_keywords = {'name'} | ALLOWED_MODEL_GROUP_TERMS  #  union
    for keyword_value in sline:
        keyword, value = keyword_value.split('=', 1)
        keyword = keyword.lower()
        assert keyword in group_keywords, f'keyword={keyword} is not supported; {comment!r}'
        if keyword in group_dict:
            raise RuntimeError(f'keyword={keyword} already exists in group')
        if keyword == 'name':
            assert value[0] in {'"', "'"}, f'value={value!r}; expected it to start with a quote'
            assert value[-1] in {'"', "'"}, f'value={value!r}; expected it to end with a quote'
            value2 = value[1:-1]
            group_dict[keyword] = value2
        else:
            value_list = []
            if ',' in value:
                values = value.split(',')
                for valuei in values:
                    valuesi = _split_colon_tuple(valuei)
                    value_list.append(valuesi)
            else:
                valuesi = _split_colon_tuple(value)
                value_list.append(valuesi)
            group_dict[keyword] = value_list
    group = ModelGroup(**group_dict)
    #group = ModelGroup(name, nodes=nodes, elements=elements,
               #properties=properties, materials=materials)
    # check the repr
    str(group)
    return group