old_contents: 'use strict';
  
  let htmlParser = require('parse5');
  let React = require('react');
  let convertAttr = require('react-attr-converter');
  
  let renderNode = (node, key) => {
    if (node.nodeName === '#text') {
      return node.value;
    }
  
    let attr = node.attrs.reduce((result, attr) => {
      result[convertAttr(attr.name)] = attr.value;
      return result;
    }, {key});
  
    let children = node.childNodes.map(renderNode);
    return React.createElement(node.tagName, attr, children);
  };
  
  let renderHTML = (html) => {
    let htmlAST = htmlParser.parseFragment(html);
  
    if (htmlAST.childNodes.length === 0) {
      return null;
    }
  
    let result = htmlAST.childNodes.map(renderNode);
  
    return result.length === 1 ? result[0] : result;
  };
  
  module.exports = renderHTML;
  module.exports.renderHTML = renderHTML;
  
new_contents: 'use strict';
  
  var htmlParser = require('parse5');
  var React = require('react');
  var convertAttr = require('react-attr-converter');
  
  var renderNode = function (node, key) {
    if (node.nodeName === '#text') {
      return node.value;
    }
  
    var attr = node.attrs.reduce(function (result, attr) {
      result[convertAttr(attr.name)] = attr.value;
      return result;
    }, {key});
  
    var children = node.childNodes.map(renderNode);
    return React.createElement(node.tagName, attr, children);
  };
  
  var renderHTML = function (html) {
    var htmlAST = htmlParser.parseFragment(html);
  
    if (htmlAST.childNodes.length === 0) {
      return null;
    }
  
    var result = htmlAST.childNodes.map(renderNode);
  
    return result.length === 1 ? result[0] : result;
  };
  
  module.exports = renderHTML;
  module.exports.renderHTML = renderHTML;
  
subject: Support ES5