[i].target === target2 ||
                    entries[i].target === target3 ||
                    entries[i].target === target4, step);
      }
    });

    entries = [];
    enqueueStep2();
  }

  // Lock target3.
  async function enqueueStep2() {
    target3.classList.add("hidden");
    requestAnimationFrame(() => {
      requestAnimationFrame(() => {
        runStep2();
      });
    });
  }

  // Verify that the hidden element received a not-intersecting event.
  function runStep2() {
    const step = 