code: function ReactDOMComponent(element) {
    var tag = element.type;
    validateDangerousTag(tag);
    this._currentElement = element;
    this._tag = tag.toLowerCase();
    this._namespaceURI = null;
    this._renderedChildren = null;
    this._previousStyle = null;
    this._previousStyleCopy = null;
    this._hostNode = null;
    this._hostParent = null;
    this._rootNodeID = 0;
    this._domID = 0;
    this._hostContainerInfo = null;
    this._wrapperState = null;
    this._topLevelWrapper = null;
    this._flags = 0;
    if (process.env.NODE_ENV !== 'production') {
      this._ancestorInfo = null;
      setAndValidateContentChildDev.call(this, null);
    }
  }
docs: Creates a new React class that is idempotent and capable of containing other
  React components. It accepts event listeners and DOM properties that are
  valid according to `DOMProperty`.
  
  - Event listeners: `onClick`, `onMouseDown`, etc.
  - DOM properties: `className`, `name`, `title`, etc.
  
  The `style` property functions differently from the DOM API. It accepts an
  object mapping of style properties to values.
  
  @constructor ReactDOMComponent
  @extends ReactMultiChild