ó
Xé?_c           @   s|   d  d l  Z  d  d l m Z e j r> d  d l m Z m Z n d  d l	 m Z m Z e
 ƒ  Z d „  Z d „  Z d „  Z d S(   iÿÿÿÿN(   t   utils(   t   maxt   minc          O   s   t  t |  | Ž S(   N(   t   new_min_maxt   _builtin_min(   t   argst   kwargs(    (    s‚   /local/mnt/workspace/CRMBuilds/Saipan.LA.2.0-00145-STD.PROD-1_20200821_083004/b/common/sectools/ext/future/builtins/new_min_max.pyt   newmin   s    c          O   s   t  t |  | Ž S(   N(   R   t   _builtin_max(   R   R   (    (    s‚   /local/mnt/workspace/CRMBuilds/Saipan.LA.2.0-00145-STD.PROD-1_20200821_083004/b/common/sectools/ext/future/builtins/new_min_max.pyt   newmax   s    c         O   s¹  xD | j  ƒ  D]6 \ } } | t d d g ƒ k r t d | ƒ ‚ q q Wt | ƒ d k rb t ‚ n  t | ƒ d k r• | j d t ƒ t k	 r• t ‚ n  t | ƒ d k rht | d ƒ } y t | ƒ } WnN t k
 r| j d t ƒ t k	 rü | j d ƒ St	 d j
 |  j ƒ ƒ ‚ n Xt j | g | ƒ } | j d ƒ d k	 r[|  | d | j d ƒ ƒS|  | ƒ Sn  t | ƒ d k rµ| j d ƒ d k	 r¨|  | d | j d ƒ ƒS|  | ƒ Sn  d S(   sï   
    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
    t   keyt   defaults   Illegal argument %si    i   s   {}() arg is an empty sequenceN(   t   itemst   sett	   TypeErrort   lent   gett	   _SENTINELt   itert   nextt   StopIterationt
   ValueErrort   formatt   __name__t	   itertoolst   chaint   None(   t   _builtin_funcR   R   R
   t   _t   iteratort   first(    (    s‚   /local/mnt/workspace/CRMBuilds/Saipan.LA.2.0-00145-STD.PROD-1_20200821_083004/b/common/sectools/ext/future/builtins/new_min_max.pyR      s.    		*	(   R   t   futureR    t   PY2t   __builtin__R   R   R   R   t   builtinst   objectR   R   R	   R   (    (    (    s‚   /local/mnt/workspace/CRMBuilds/Saipan.LA.2.0-00145-STD.PROD-1_20200821_083004/b/common/sectools/ext/future/builtins/new_min_max.pyt   <module>   s   				