function f(opt_propertyBag) {
      let el = createFunction(tagName, opt_propertyBag);
      f.decorate(el);
      for (let propertyName in opt_propertyBag) {
        el[propertyName] = opt_propertyBag[propertyName];
      }
      return el;
    }
Creates a new UI element constructor.
@param {Object=} opt_propertyBag Optional bag of properties to set on the
    object after created. The property {@code ownerDocument} is special
    cased and it allows you to create the element in a different
    document than the default.
@constructor