{%- assign raw = include.value | default: '' -%}
{%- assign valid = true -%}
{%- assign length = raw | size -%}
{%- assign last = raw | slice: -1, 1 -%}
{%- if last == 'Z' -%}
{%- assign zone_length = 1 -%}
{%- assign zone = '+00:00' -%}
{%- else -%}
{%- assign zone_length = 6 -%}
{%- assign zone = raw | slice: -6, 6 -%}
{%- assign sign = zone | slice: 0, 1 -%}
{%- assign separator = zone | slice: 3, 1 -%}
{%- assign zone_hour = zone | slice: 1, 2 -%}
{%- assign zone_minute = zone | slice: 4, 2 -%}
{%- assign zone_digits = zone_hour | append: zone_minute | remove: '0' | remove: '1' | remove: '2' | remove: '3' | remove: '4' | remove: '5' | remove: '6' | remove: '7' | remove: '8' | remove: '9' -%}
{%- assign hours = zone_hour | plus: 0 -%}
{%- assign minutes = zone_minute | plus: 0 -%}
{%- unless sign == '+' or sign == '-' -%}{%- assign valid = false -%}{%- endunless -%}
{%- unless separator == ':' and zone_digits == '' and hours < 24 and minutes < 60 -%}{%- assign valid = false -%}{%- endunless -%}
{%- if zone == '-00:00' -%}{%- assign valid = false -%}{%- endif -%}
{%- endif -%}
{%- assign body_length = length | minus: zone_length -%}
{%- assign body = raw | slice: 0, body_length | replace: ' ', 'T' -%}
{%- if body_length == 16 -%}
{%- assign canonical_body = body | append: ':00' -%}
{%- elsif body_length == 19 -%}
{%- assign canonical_body = body -%}
{%- elsif body_length > 20 -%}
{%- assign decimal = body | slice: 19, 1 -%}
{%- assign fraction_length = body_length | minus: 20 -%}
{%- assign fraction = body | slice: 20, fraction_length -%}
{%- assign fraction_rest = fraction | remove: '0' | remove: '1' | remove: '2' | remove: '3' | remove: '4' | remove: '5' | remove: '6' | remove: '7' | remove: '8' | remove: '9' -%}
{%- unless decimal == '.' and fraction_rest == '' and fraction_length <= 3 -%}{%- assign valid = false -%}{%- endunless -%}
{%- assign canonical_body = body | slice: 0, 19 -%}
{%- else -%}
{%- assign valid = false -%}
{%- assign canonical_body = '' -%}
{%- endif -%}
{%- assign year = raw | slice: 0, 4 -%}
{%- assign actual = raw | date: '%Y-%m-%dT%H:%M:%S%:z' -%}
{%- assign expected = canonical_body | append: zone -%}
{%- if year == '0000' or actual != expected -%}{%- assign valid = false -%}{%- endif -%}
{%- if valid -%}{%- else -%}{{ include.display | escape }} (invalid {{ include.kind | escape }} time){%- endif -%}