<!doctype html>
<html>
	<head>
		<title>Origin for site with document.domain set to a parent domain</title>
		<style type="text/css">
html, body, iframe { display: block; width: 100%; height: 100%; border: none; margin: 0; padding: 0; }
		</style>
		<script type="text/javascript" src="../resources/crossorigin.sub.js"></script>
		<script type="text/javascript">
window.onload = function () {
	var origin = 'http://'+httpHostMain;
	if( location.href.indexOf(origin+'/') ) {
		document.body.innerHTML = 'This must be tested on '+origin+'/';
		return;
	}
	var iframe = document.createElement('iframe');
	iframe.src = 'http://'+httpHostAlias+location.pathname.replace(/.html$/,'-1.html');
	document.body.appendChild(iframe);
};
		</script>
	</head>
	<body>

		<noscript><p>Enable JavaScript and reload</p></noscript>

	</body>
</html>
