
    d                    Z   d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dlm	Z	 i ddddd	d
ddddddddddddddddddddddd d!d"d#d$d%i d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9d:dd;d<d=d>d?d@dAdBdCdDdEdFdGdHdIZ
dJdKdLdMdNd dOdPdQdRdS
ZdadXZ	 	 	 dbdcd`ZdS )d    )annotationsN)find_stack_level)Versionbs4z4.9.3bloscz1.21.0
bottleneckz1.3.2brotliz0.7.0fastparquetz0.6.3fsspecz	2021.07.0html5libz1.1
hypothesisz6.34.2gcsfsjinja2z3.0.0
lxml.etreez4.6.3
matplotlibz3.6.1numbaz0.53.1numexprz2.7.3odfpyz1.4.1openpyxlz3.0.7
pandas_gbqz0.15.0psycopg2z2.8.6pymysqlz1.0.2pyarrowz7.0.0
pyreadstatz1.1.2pytestz7.3.2pyxlsbz1.0.8s3fsz	2021.08.0scipyz1.7.1snappyz0.6.0
sqlalchemyz1.4.16tablestabulatez0.8.9xarrayz0.21.0xlrdz2.0.1
xlsxwriterz1.4.3	zstandardz0.15.2tzdataz2022.1z2.2.0z5.15.1)qtpypyqt5beautifulsoup4
BottleneckbrotlipyJinja2lxmlz
pandas-gbqzpython-snappy
SQLAlchemypytables)
r   r   r	   r   r   odfr   r   r    r!   moduletypes.ModuleTypereturnstrc                    t          | dd           }|t          | dd           }|1| j        dk    rdS | j        dk    rdS t          d| j                   | j        dk    r|                                d         }|S )	N__version____VERSION__r	    r   zCan't determine version for r   r   )getattr__name__ImportErrorsplit)r2   versions     S/var/www/html/t/fyr/venv311/lib/python3.11/site-packages/pandas/compat/_optional.pyget_versionr@   F   s    fmT22G&-66?h&&2?h&& 2JJJKKK*$$--//!$N    r9   raisenameextraerrorsmin_version
str | Nonec                   |dv sJ t                               |           }||n| }d| d| d| d}	 t          j        |           }n&# t          $ r |dk    rt	          |          Y dS w xY w|                     d          d         }|| k    r|}t          j        |         }	n|}	||nt                              |          }
|
rt          |	          }|rqt          |          t          |
          k     rQd	|
 d
| d| d}|dk    r*t          j        |t          t                                 dS |dk    rt	          |          |S )a9  
    Import an optional dependency.

    By default, if a dependency is missing an ImportError with a nice
    message will be raised. If a dependency is present, but too old,
    we raise.

    Parameters
    ----------
    name : str
        The module name.
    extra : str
        Additional text to include in the ImportError message.
    errors : str {'raise', 'warn', 'ignore'}
        What to do when a dependency is not found or its version is too old.

        * raise : Raise an ImportError
        * warn : Only applicable when a module's version is to old.
          Warns that the version is too old and returns None
        * ignore: If the module is not installed, return None, otherwise,
          return the module, even if the version is too old.
          It's expected that users validate the version locally when
          using ``errors="ignore"`` (see. ``io/html.py``)
    min_version : str, default None
        Specify a minimum version that is different from the global pandas
        minimum version required.
    Returns
    -------
    maybe_module : Optional[ModuleType]
        The imported module, when found and the version is correct.
        None is returned when the package is not found and `errors`
        is False, or when the package's version is too old and `errors`
        is ``'warn'``.
    >   warnrB   ignoreNzMissing optional dependency 'z'. z Use pip or conda to install .rB   r   zPandas requires version 'z' or newer of 'z' (version 'z' currently installed).rI   )
stacklevel)INSTALL_MAPPINGget	importlibimport_moduler<   r=   sysmodulesVERSIONSr@   r   warningsrI   UserWarningr   )rC   rD   rE   rF   package_nameinstall_namemsgr2   parentmodule_to_getminimum_versionr>   s               r?   import_optional_dependencyr\   [   s   R 00000"&&t,,L#/#;<<L	7 	7 	7 	7 	7'3	7 	7 	7 (..   Wc"""tt ZZ__QF~~L1%0%<kk(,,vBVBVO 'm,, 	'ww'''/*B*BBB>O > >F > >$> > >  /11   
 t7""!#&&&Ms   A	 	A,+A,)r2   r3   r4   r5   )r9   rB   N)rC   r5   rD   r5   rE   r5   rF   rG   )
__future__r   rO   rQ   typesrT   pandas.util._exceptionsr   pandas.util.versionr   rS   rM   r@   r\    rA   r?   <module>rb      s   " " " " " "     



   4 4 4 4 4 4 ' ' ' ' ' '%	7%X% '% g	%
 7% k% % (% [% g% '% '% X% w% W%  !%" (#% %$ %%& w'%( w)%* '+%, g-%. g/%0 K1%2 W3%4 g5%6 (7%8 g9%: ;%< h=%> G?%@ 'A%B C%D hE% %F I% % %V     . "	R R R R R R RrA   