// Copyright 2015 the V8 project authors. All rights reserved.// Use of this source code is governed by a BSD-style license that can be// found in the LICENSE file.// Flags: --allow-natives-syntaxfunctionassertAsync(b,s){if(!b){%AbortJS(" FAILED!")}}classPextendsPromise{constructor(){super(...arguments)returnnewProxy(this,{get:(_,key)=>{returnkey=='then'?this.then.bind(this):this.constructor.resolve(20)}})}}letp=P.resolve(10)p.key.then(v=>assertAsync(v===20));