text: function assert(b) {
      if (!b)
          throw new Error('bad assertion');
  }
  
  function testStackOverflowGet() {
      let threw = false;
      try {
          let o = {};
          let p = new Proxy(o, {});
          Object.setPrototypeOf(o, p);
          p.anyField;
      } catch(e) {
          threw = true;
          assert(e.toString() === "RangeError: Maximum call stack size exceeded.");
      }
      assert(threw);
  }
  
  function testStackOverflowIndexedGet(i) {
      let threw = false;
      try {
          let o = {};
          let p = new Proxy(o, {});
          Object.setPrototypeOf(o, p);
          p[i];
      } catch(e) {
          threw = true;
          assert(e.toString() === "RangeError: Maximum call stack size exceeded.");
      }
      assert(threw);
  }
  
  function testStackOverflowSet() {
      let threw = false;
      try {
          let o = {};
          let p = new Proxy(o, {});
          Object.setPrototypeOf(o, p);
          p.anyField = 50;
      } catch(e) {
          threw = true;
          assert(e.toString() === "RangeError: Maximum call stack size exceeded.");
      }
      assert(threw);
  }
  
  function testStackOverflowIndexedSet(i) {
      let threw = false;
      try {
          let o = {};
          let p = new Proxy(o, {});
          Object.setPrototypeOf(o, p);
          p[i] = 50;
      } catch(e) {
          threw = true;
          assert(e.toString() === "RangeError: Maximum call stack size exceeded.");
      }
      assert(threw);
  }
  
  for (let i = 0; i < 250; i++) {
      testStackOverflowGet();
      testStackOverflowIndexedGet(i);
      testStackOverflowSet();
      testStackOverflowIndexedSet(i);
  }
  