;
      t.add_cleanup(function() { wrapper.remove(); });
      document.body.appendChild(wrapper);
    }

    let shadowRoot;
    let initDict = {mode: mode, delegatesFocus: delegatesFocus, clonable};
    let expectedSerializable = null;
    switch (serializable) {
      case undefined: expectedSerializable = false; break;
      case "true": initDict.serializable = expectedSerializable = true; break;
      case "false": initDict.serializable = expectedSerializable = false; break;
      default: throw new Er