<html>
    <head>
        <script src="priorities/defer.js" defer></script>
        <script src="priorities/async.js" async></script>
        <script src="priorities/head.js"></script>
    </head>
    <body>
        <script>
            document.write('<script src="priorities/document-write.js"><\/script>');
        </script>
        <script>
            var script = document.createElement('script');
            script.src = "priorities/injected.js";
            document.getElementsByTagName('head')[0].appendChild(script);
        </script>
        <script>
            var asyncScript = document.createElement('script');
            asyncScript.async = true;
            asyncScript.src = "priorities/injected-async.js";
            document.getElementsByTagName('head')[0].appendChild(asyncScript);
        </script>
        <script src="priorities/body.js"></script>
    </body>
</html>
