
    Mh                     :    S r SSKJr  SSKJrJr  SS jrS rS rg)	zs
This module offers general convenience and utility functions for dealing with
datetimes.

.. versionadded:: 2.7.0
    )unicode_literals)datetimetimeNc                     [         R                  " U 5      n[         R                  " UR                  5       [	        SU S95      $ )a  
Returns a :py:class:`datetime` representing the current day at midnight

:param tzinfo:
    The time zone to attach (also used to determine the current day).

:return:
    A :py:class:`datetime.datetime` object representing the current day
    at midnight.
r   tzinfo)r   nowcombinedater   )r   dts     @/var/www/html/env/lib/python3.13/site-packages/dateutil/utils.pytodayr      s2     
f	BBGGItAf'=>>    c                 >    U R                   b  U $ U R                  US9$ )aP  
Sets the ``tzinfo`` parameter on naive datetimes only

This is useful for example when you are provided a datetime that may have
either an implicit or explicit time zone, such as when parsing a time zone
string.

.. doctest::

    >>> from dateutil.tz import tzoffset
    >>> from dateutil.parser import parse
    >>> from dateutil.utils import default_tzinfo
    >>> dflt_tz = tzoffset("EST", -18000)
    >>> print(default_tzinfo(parse('2014-01-01 12:30 UTC'), dflt_tz))
    2014-01-01 12:30:00+00:00
    >>> print(default_tzinfo(parse('2014-01-01 12:30'), dflt_tz))
    2014-01-01 12:30:00-05:00

:param dt:
    The datetime on which to replace the time zone

:param tzinfo:
    The :py:class:`datetime.tzinfo` subclass instance to assign to
    ``dt`` if (and only if) it is naive.

:return:
    Returns an aware :py:class:`datetime.datetime`.
r   )r   replace)r   r   s     r   default_tzinfor      s$    : 
yy	zzz((r   c                 L    [        U5      nX-
  nU* Us=:*  =(       a    U:*  $ s  $ )zb
Useful for comparing two datetimes that may have a negligible difference
to be considered equal.
)abs)dt1dt2delta
differences       r   within_deltar   @   s/    
 JEJ6Z((5((((r   )N)__doc__
__future__r   r   r   r   r   r    r   r   <module>r      s"    ( #?  )F)r   