?????????? ????????? - ??????????????? - /usr/lib/python3.9/site-packages/dateutil/tz/__pycache__/tz.cpython-39.opt-1.pyc
???????
a &�i�� � @ s� d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z ddl Z ddl mZ ddlm Z ddlmZmZ ddlmZmZ dd lmZ dd lmZmZ ddlmZ zddlmZmZ W n ey� d ZZY n0 dd lmZ e�d�Ze�ddddd�Z e �!� Z"e �#e�G dd� dej$��Z%e%� Z&e �#e�G dd� dej$��Z'G dd� de�Z(G dd� de)�Z*G dd� de)�Z+G dd� de�Z,G dd� de�Z-e �#e�G dd� de-��Z.G dd � d e)�Z/G d!d"� d"e�Z0G d#d$� d$e)�Z1ej2d%k�rd&d'gZ3g d(�Z4ng Z3g Z4d)d*� Z5e5� Z6[5d:d+d,�Z7d;d-d.�Z8d/d0� Z9d1d2� Z:ej;d3k�rXd4d5� Z<nd6d5� Z<zdd7l=m>Z? W n$ e�y� G d8d9� d9e)�Z?Y n0 dS )<a� This module offers timezone implementations subclassing the abstract :py:class:`datetime.tzinfo` type. There are classes to handle tzfile format files (usually are in :file:`/etc/localtime`, :file:`/usr/share/zoneinfo`, etc), TZ environment string (in all known formats), given ranges (with help from relative deltas), local machine timezone, fixed offset timezone, and UTC timezone. � N)�OrderedDict)�string_types)�_thread� )�tzname_in_python2�_tzinfo)�tzrangebase�enfold)�_validate_fromutc_inputs)�_TzSingleton�_TzOffsetFactory)� _TzStrFactory)�tzwin� tzwinlocal)�warni� c @ sb e Zd ZdZdd� Zdd� Zedd� �Zdd � Ze d d� �Z dd � ZdZdd� Z dd� ZejZdS )�tzutca� This is a tzinfo object that represents the UTC time zone. **Examples:** .. doctest:: >>> from datetime import * >>> from dateutil.tz import * >>> datetime.now() datetime.datetime(2003, 9, 27, 9, 40, 1, 521290) >>> datetime.now(tzutc()) datetime.datetime(2003, 9, 27, 12, 40, 12, 156379, tzinfo=tzutc()) >>> datetime.now(tzutc()).tzname() 'UTC' .. versionchanged:: 2.7.0 ``tzutc()`` is now a singleton, so the result of ``tzutc()`` will always return the same object. .. doctest:: >>> from dateutil.tz import tzutc, UTC >>> tzutc() is tzutc() True >>> tzutc() is UTC True c C s t S �N��ZERO��self�dt� r �2/usr/lib/python3.9/site-packages/dateutil/tz/tz.py� utcoffsetJ s ztzutc.utcoffsetc C s t S r r r r r r �dstM s z tzutc.dstc C s dS )N�UTCr r r r r �tznameP s ztzutc.tznamec C s dS )�6 Whether or not the "wall time" of a given datetime is ambiguous in this zone. :param dt: A :py:class:`datetime.datetime`, naive or time zone aware. :return: Returns ``True`` if ambiguous, ``False`` otherwise. .. versionadded:: 2.6.0 Fr r r r r �is_ambiguousT s ztzutc.is_ambiguousc C s |S )z� Fast track version of fromutc() returns the original ``dt`` object for any valid :py:class:`datetime.datetime` object. r r r r r �fromutcd s z tzutc.fromutcc C s0 t |ttf�stS t |t�p.t |t�o.|jtkS r )� isinstancer �tzoffset�NotImplemented�_offsetr �r �otherr r r �__eq__l s �ztzutc.__eq__Nc C s | |k S r r r% r r r �__ne__u s ztzutc.__ne__c C s d| j j S �Nz%s()�� __class__�__name__�r r r r �__repr__x s ztzutc.__repr__)r, � __module__�__qualname__�__doc__r r r r r r r r'