def iso8601_datetime(s):
try:<EOL><INDENT>return datetime.datetime.strptime(s, ISO8601_DATETIME_FORMAT).replace(tzinfo=pytz.utc)<EOL><DEDENT>except (TypeError, ValueError):<EOL><INDENT>return s<EOL><DEDENT>
Parses an ISO 8601 datetime string and returns a UTC datetime object,
or the string if parsing failed.
:param s: ISO 8601-formatted datetime string (2015-01-25T12:34:56Z)
:return: datetime or str