@staticmethod
def _deserialize_date(value):
    """
        Deserialise a date
        :param value: The date vlue
        :return: The deserialised date
        """
    import datetime
    import pytz
    if value is None:
        return value
    if value['timezone'] is None:
        return datetime.datetime.strptime(value['date'], '%Y-%m-%dT%H:%M:%S.%f'
            )
    if value['timezone'] == 'UTC':
        return datetime.datetime.strptime(value['date'], '%Y-%m-%dT%H:%M:%S.%f'
            ).replace(tzinfo=pytz.utc)
    return datetime.datetime.strptime(value['date'], '%Y-%m-%dT%H:%M:%S.%f'
        ).replace(tzinfo=pytz.timezone(value['timezone']))
