
PASS Use NewTarget's prototype, not the one stored at definition time 
PASS Rethrow any exceptions thrown while getting the prototype 
PASS If prototype is not object (null), derives the fallback from NewTarget's realm (autonomous custom elements) 
PASS If prototype is not object (undefined), derives the fallback from NewTarget's realm (autonomous custom elements) 
PASS If prototype is not object (5), derives the fallback from NewTarget's realm (autonomous custom elements) 
PASS If prototype is not object (string), derives the fallback from NewTarget's realm (autonomous custom elements) 
FAIL If prototype is not object (null), derives the fallback from NewTarget's realm (customized built-in elements) promise_test: Unhandled rejection with value: object "TypeError: Reflect.construct requires the first argument be a constructor"
FAIL If prototype is not object (undefined), derives the fallback from NewTarget's realm (customized built-in elements) promise_test: Unhandled rejection with value: object "TypeError: Reflect.construct requires the first argument be a constructor"
FAIL If prototype is not object (5), derives the fallback from NewTarget's realm (customized built-in elements) promise_test: Unhandled rejection with value: object "TypeError: Reflect.construct requires the first argument be a constructor"
FAIL If prototype is not object (string), derives the fallback from NewTarget's realm (customized built-in elements) promise_test: Unhandled rejection with value: object "TypeError: Reflect.construct requires the first argument be a constructor"
PASS HTMLParagraphElement constructor must not get .prototype until it finishes its extends sanity checks, calling proxy constructor directly 
PASS HTMLParagraphElement constructor must not get .prototype until it finishes its extends sanity checks, calling via Reflect 

