==================
Ifchanged Basic
==================

{% ifchanged %}
content
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With Values
==================

{% ifchanged var1 var2 %}
content
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag
        (filtered_value
          (value
            (variable_attribute
              (identifier))))
        (filtered_value
          (value
            (variable_attribute
              (identifier)))))
      (template
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With Else
==================

{% ifchanged %}
content
{% else %}
unchanged
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)))
    (else_block
      (else_tag)
      (template
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With Values And Else
==================

{% ifchanged x y|upper %}
content
{% else %}
unchanged
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag
        (filtered_value
          (value
            (variable_attribute
              (identifier))))
        (filtered_value
          (value
            (variable_attribute
              (identifier)))
          (filter_expression
            (filter))))
      (template
        (content)))
    (else_block
      (else_tag)
      (template
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With An Empty Else
==================

{% ifchanged %}
content
{% else %}{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)))
    (else_block
      (else_tag))
    (endifchanged_tag))
  (content))

==================
Ifchanged Nested In The Else Of Another
==================

{% ifchanged %}
a
{% else %}
{% ifchanged %}
b
{% else %}
c
{% endifchanged %}
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)))
    (else_block
      (else_tag)
      (template
        (content)
        (ifchanged_group
          (ifchanged_block
            (ifchanged_tag)
            (template
              (content)))
          (else_block
            (else_tag)
            (template
              (content)))
          (endifchanged_tag))
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With Two Elses
==================

{% ifchanged %}
a
{% else %}
b
{% else %}
c
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)))
    (else_block
      (else_tag)
      (template
        (content)
        (unexpected_tag)
        (content)))
    (endifchanged_tag))
  (content))

==================
Ifchanged With An Argument On Else
==================

{% ifchanged %}
a
{% else x %}
b
{% endifchanged %}

---

(template
  (content)
  (ifchanged_group
    (ifchanged_block
      (ifchanged_tag)
      (template
        (content)
        (unexpected_tag)
        (content)))
    (endifchanged_tag))
  (content))
