def METHOD_NAME(cls, s, no_create=False, **kwargs):
    assert cls.is_instance_from_str(s)
    idx = get_right_parentheses_index(s)
    assert idx is not None
    param_str = s[len(cls.__name__ + '('):idx]
    tmp_idx = param_str.find('|')
    if tmp_idx < 0:
        tmp_block_name = 'uuid{}'.format(uuid.uuid4().hex)
    else:
        tmp_block_name = param_str[0:tmp_idx]
        param_str = param_str[tmp_idx + 1:]
    param_str_split = param_str.split(',')
    in_channels = int(param_str_split[0])
    out_channels = int(param_str_split[1])
    stride = int(param_str_split[2])
    sub_layers = int(param_str_split[3])
    return cls(
        in_channels=in_channels,
        out_channels=out_channels,
        stride=stride,
        sub_layers=sub_layers,
        block_name=tmp_block_name,
        no_create=no_create,
        **kwargs), s[idx + 1:]