@staticmethod
def iso8601(timestamp=None):
    if (timestamp is None):
        return timestamp
    if (not isinstance(timestamp, (int, long))):
        return None
    if (int(timestamp) < 0):
        return None
    try:
        utc = datetime.datetime.utcfromtimestamp((timestamp // 1000))
        return ((utc.strftime('%Y-%m-%dT%H:%M:%S.%f')[:(- 6)] + '{:03d}'.format((int(timestamp) % 1000))) + 'Z')
    except (TypeError, OverflowError, OSError):
        return None
@staticmethod
def iso8601(timestamp=None):
    if (timestamp is None):
        return timestamp
    if (not isinstance(timestamp, (int, long))):
        return None
    if (int(timestamp) < 0):
        return None
    try:
        utc = datetime.datetime.utcfromtimestamp((timestamp // 1000))
        return ((utc.strftime('%Y-%m-%dT%H:%M:%S.%f')[:(- 6)] + '{:03d}'.format((int(timestamp) % 1000))) + 'Z')
    except (TypeError, OverflowError, OSError):
        return None