File: //usr/local/lib/python3.9/site-packages/future/builtins/__pycache__/new_min_max.cpython-39.pyc
a
q�dg� � @ s^ d dl Z d dlmZ ejr,d dlmZmZ nd dl mZmZ e
� Zdd� Zdd� Z
dd � ZdS )
� N)�utils)�max�minc O s t tg| �R i |��S �N)�new_min_max�_builtin_min��args�kwargs� r �E/usr/local/lib/python3.9/site-packages/future/builtins/new_min_max.py�newmin s r
c O s t tg| �R i |��S r )r �_builtin_maxr r r r �newmax s r c O s4 |� � D ]"\}}|tddg�vrtd|��qt|�dkr<t�t|�dkr\|�dt�tur\t�t|�dkr�t|d �}zt|�}W n@ ty� |�dt�tur�|�d� Y S t d�
| j���Y n0 t�
|g|�}|�d�dur�| ||�d�d�S | |�S t|�dk�r0|�d�du�r(| ||�d�d�S | |�S dS ) z�
To support the argument "default" introduced in python 3.4 for min and max
:param _builtin_func: builtin min or builtin max
:param args:
:param kwargs:
:return: returns the min or max based on the arguments passed
�key�defaultzIllegal argument %sr � z{}() arg is an empty sequenceN)r )�items�set� TypeError�len�get� _SENTINEL�iter�next�
StopIteration�
ValueError�format�__name__� itertools�chain)Z
_builtin_funcr r
r �_�iterator�firstr r r r s. r )r �futurer �PY2�__builtin__r r r r �builtins�objectr r
r r r r r r �<module> s