Any warnings driven off of `warnAboutDeprecatedLifecycles` should use `shared/lowPriorityWarning` rather than `fbjs/lib/warning` to avoid thrashing automated tests.
const constructor = instance && instance.constructor;
  return (
    type.displayName ||
    (constructor && constructor.displayName) ||
    type.name ||
    (constructor && constructor.name) ||
    null
  );
}
function shouldConstruct(Component) {
  return !!(Component.prototype && Component.prototype.isReactComponent);
}
function getMaskedContext(contextTypes, unmaskedContext) {
  if (!contextTypes) {
    return emptyObject;
  }
  const context = {};
  for (let key in contextTypes) {
    context[key] = unmaskedContext[key];
  }
  return context;
}
export default ReactShallowRenderer;