code: def Add(self, value, *optional):
          
          if isinstance(value, TListItemWithOption):
              if optional:
                  raise RuntimeError(
                      "option specified along with "
                      "TListItemWithOption. Specify one or the "
                      "other but not both.")
              return super(List, self).Add(value.item, value.option)
          return super(List, self).Add(value, *optional)
docs: Overload ROOT's basic TList::Add to support supplying
          TListItemWithOption