def get_id(self, version: int, modifiers: str='') -> str:
    if (version == 1):
        tt = str(self)
        if (tt in _id_shorthands_v1):
            return _id_shorthands_v1[tt]
        else:
            return '::'.join((n.get_id(version) for n in self.names))
    res = []
    if ((len(self.names) > 1) or (len(modifiers) > 0)):
        res.append('N')
    res.append(modifiers)
    for n in self.names:
        res.append(n.get_id(version))
    if ((len(self.names) > 1) or (len(modifiers) > 0)):
        res.append('E')
    return ''.join(res)
def get_id(self, version: int, modifiers: str=) -> str:
    if (version == 1):
        tt = str(self)
        if (tt in _id_shorthands_v1):
            return _id_shorthands_v1[tt]
        else:
            return '::'.join((n.get_id(version) for n in self.names))
    res = []
    if ((len(self.names) > 1) or (len(modifiers) > 0)):
        res.append('N')
    res.append(modifiers)
    for n in self.names:
        res.append(n.get_id(version))
    if ((len(self.names) > 1) or (len(modifiers) > 0)):
        res.append('E')
    return .join(res)