def add(self, **kwargs):
    """Adds a new element at the end of the list and returns it. Keyword
    arguments may be used to initialize the element.
    """
    new_element = self._message_descriptor._concrete_class(**kwargs)
    new_element._SetListener(self._message_listener)
    self._values.append(new_element)
    if not self._message_listener.dirty:
      self._message_listener.Modified()
    return new_element
Adds a new element at the end of the list and returns it. Keyword
    arguments may be used to initialize the element.
    
deps/protobuf/python/google/protobuf/internal/containers.py