docs: def parse_addr(text):
      "Parse a 1- to 3-part address spec."
      if text:
          parts = text.split(':')
          length = len(parts)
          if length== 3:
              return parts[0], parts[1], int(parts[2])
          elif length == 2:
              return None, parts[0], int(parts[1])
          elif length == 1:
              return None, '', int(parts[0])
      return None, None, None