var carryOn = true;

window.addEventListener("message", e => {
  console.log("frame content", "message", e);
  if ("title" in e.data) {
    document.title = e.data.title;
  }
  if ("stop" in e.data) {
    carryOn = false;
  }
});

// Use some CPU.
var interval = window.setInterval(() => {
  if (!carryOn) {
    window.clearInterval(interval);
    return;
  }

  // Compute an arbitrary value, print it out to make sure that the JS
  // engine doesn't discard all our computation.
  var date = Date.now();
  var array = [];
  var i = 0;
  while (Date.now() - date <= 100) {
    array[i%2] = i++;
  }
}, 300);