
PASS Node.prototype.cloneNode(false) must be able to clone a custom element 
PASS Node.prototype.cloneNode(false) must be able to clone as a autonomous custom element when it contains is attribute 
FAIL Node.prototype.cloneNode(false) must be able to clone as a customized built-in element when it has an inconsistent "is" attribute assert_true: expected true got false
PASS Node.prototype.cloneNode(false) must be able to clone a custom element inside an iframe 
PASS Node.prototype.cloneNode(true) must be able to clone a descendent custom element 
PASS Node.prototype.cloneNode(true) must set parentNode, previousSibling, and nextSibling before upgrading custom elements 
PASS HTMLElement constructor must throw an TypeError when the top of the construction stack is marked AlreadyConstructed due to a custom element constructor constructing itself after super() call 
PASS HTMLElement constructor must throw an TypeError when the top of the construction stack is marked AlreadyConstructed due to a custom element constructor constructing itself before super() call 
PASS Upgrading a custom element must throw TypeError when the custom element's constructor returns another element 
PASS Inserting an element must not try to upgrade a custom element when it had already failed to upgrade once 

