o
    þ0GfÄ  ã                   @   sP   d Z dd„ Zg d¢Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Zdd„ Z	dS )z<
Compatibility tools for differences between Python 2 and 3
c                 C   s   t | ƒS ©N)Ústr)ÚxÚ_© r   ú9lib/python3.10/site-packages/statsmodels/compat/python.pyÚ<lambda>   s    r   )Ú	asunicodeÚasstrÚasbytesÚlmapÚlzipÚlrangeÚlfilterÚwith_metaclassc                 C   ó   t | tƒr| S |  d¡S ©NÚlatin1)Ú
isinstanceÚbytesÚencode©Úsr   r   r   r
      ó   

r
   c                 C   r   r   )r   r   Údecoder   r   r   r   r	      r   r	   c                  O   ó   t t| i |¤ŽƒS r   )ÚlistÚrange©ÚargsÚkwargsr   r   r   r       ó   r   c                  O   r   r   )r   Úzipr   r   r   r   r   $   r    r   c                  O   r   r   )r   Úmapr   r   r   r   r   (   r    r   c                  O   r   r   )r   Úfilterr   r   r   r   r   ,   r    r   c                    s&   G ‡ ‡fdd„dˆƒ}t  |ddi ¡S )z%Create a base class with a metaclass.c                       s   e Zd Z‡ ‡fdd„ZdS )z!with_metaclass.<locals>.metaclassc                    s   ˆ|ˆ |ƒS r   r   )ÚclsÚnameZ
this_basesÚd©ÚbasesÚmetar   r   Ú__new__6   s   z)with_metaclass.<locals>.metaclass.__new__N)Ú__name__Ú
__module__Ú__qualname__r*   r   r'   r   r   Ú	metaclass5   s    r.   Ztemporary_classr   )Útyper*   )r)   r(   r.   r   r'   r   r   0   s   r   N)
Ú__doc__r   Ú__all__r
   r	   r   r   r   r   r   r   r   r   r   Ú<module>   s    