<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>History Test Page 22</title>
<script type="text/javascript" src="HistoryHelper.js"></script>
</head>

<body onload="onLoad();">
<div id="statusPanel" style="border: 1px solid red; width: 100%">
History Test Page 22....
</div>
</body>

<script type="text/javascript">

function onLoad() {
  setTimeout(OnInitialLoad, 50);
  return true;
}

function OnInitialLoad() {
  if (window.history.length != 3) {
    onFailure("History_Length_Test_21", 1,
              "History length mismatch on initial load at page 22: " +
              window.history.length);
    return false;
  }
  onSuccess("History_Length_Test_21", 1);
  return true;
}

</script>
</html>