<script>
    if (window.internals) {
        internals.setPagination("LeftToRightPaginated", 0);
        internals.settings.setSimpleLineLayoutEnabled(true);
    }
</script>
<body>
<div style="font: 40px ahem; orphans: 2;">
<p>
size<br>
the<br>
window<br>
to<br>
have<br>
only<br>
one<br>
orphan<br>
line<br>
in<br>
this<br>
column<br>
from<br>
the<br>
next<br>
paragraph<br>
</p>
<p>
this line should be left orphan<br>
though<br>
style says 2.<br>
</p>
</div>
