{# The two statements, side by side where there is room and stacked where there is not. The tokens the two differ in carry a class; the marking is a comparison of two texts and says nothing about either statement, which is what the line under them states. #} {% macro statement_pair(sides) %}

The statements

{% for side in sides %}

{{ side.side }}

{% for token in side.tokens %}{% if token.differs %}{{ token.text }}{% else %}{{ token.text }}{% endif %}{% endfor %}
{% if side.ordering %}
{% for key in side.ordering %}
{{ key.name }}
{{ key.value }}{% if key.detail %}, {{ key.detail }}{% endif %}
{% endfor %}
{% else %}

this statement states no ordering of its own

{% endif %}

{{ side.result_hash }}

{% endfor %}
{% if sides|length > 1 %}

The marked tokens are where the two texts differ. Two statements that differ everywhere can return the same rows, and two that differ in one token can return other rows; the verdict above is read off the results.

{% endif %}
{% endmacro %}