+
    ÖÍi'  ã                   óì   € R t R tR t ! R R]4      t] ! R R]4      4       t] ! R R]4      4       t] ! R	 R
]4      4       t] ! R R]4      4       t] ! R R]4      4       t	] ! R R]
4      4       tR# )zÚ
Various richly-typed exceptions, that also help us deal with string formatting
in python where it's easier.

By putting the formatting in `__str__`, we also avoid paying the cost for
users who silence the exceptions.
c                 ó8   € \        V 4      ^8X  d
   V ^ ,          # V # )é   )Úlen)Útups   &Ú9/usr/lib/python3/dist-packages/numpy/_core/_exceptions.pyÚ_unpack_tupler   	   s   € Ü
ˆ3ƒx�1„}Ø�1�vˆàˆ
ó    c                ól   € \        V \        4      '       g   Q hV P                  P                  V n        V # )a/  
A decorator that makes an exception class look like its base.

We use this to hide subclasses that are implementation details - the user
should catch the base type, which is what the traceback will show them.

Classes decorated with this decorator are subject to removal without a
deprecation warning.
)Ú
issubclassÚ	ExceptionÚ__base__Ú__name__)Úclss   &r   Ú_display_as_baser      s-   € ô �cœ9×%Ò%Ð%Ð%Ø—<‘<×(Ñ(€C„LØ€Jr   c                   ó*   a € ] tR t^t o RtR tRtV tR# )ÚUFuncTypeErrorz$Base class for all ufunc exceptions c                ó   € Wn         R # ©N©Úufunc)Úselfr   s   &&r   Ú__init__ÚUFuncTypeError.__init__!   s   € ØŽ
r   r   N)r   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      s   ø‡ € Ù/÷ð r   r   c                   ó<   a a€ ] tR t^%t oRtV 3R ltR tRtVtV ;t	# )Ú_UFuncNoLoopErrorz)Thrown when a ufunc loop cannot be found c                óF   <€ \         SV `  V4       \        V4      V n        R # r   )Úsuperr   ÚtupleÚdtypes©r   r   r&   Ú	__class__s   &&&€r   r   Ú_UFuncNoLoopError.__init__(   s   ø€ Ü‰Ñ˜ÔÜ˜F“mˆŽr   c           
     óî   € R V P                   P                  : R\        V P                  RV P                   P                   4      : R\        V P                  V P                   P                  R 4      : 2# )zufunc z6 did not contain a loop with signature matching types Nz -> )r   r   r   r&   Únin©r   s   &r   Ú__str__Ú_UFuncNoLoopError.__str__,   sf   € à�T—Z‘Z×(Ñ(Ñ+ð ,Ü+¨D¯K©K¸¸¿¹¿¹Ð,HÓIÑLð MÜ §¡¨D¯J©J¯N©N¨OÐ <Ó=Ñ@ðBð	
r   )r&   ©
r   r   r   r   r   r   r-   r   r   Ú__classcell__©r(   r    s   @@r   r"   r"   %   s   ù‡ € á4õ$÷
ò 
r   r"   c                   ó<   a a€ ] tR t^4t oRtV 3R ltR tRtVtV ;t	# )Ú_UFuncBinaryResolutionErrorz&Thrown when a binary resolution fails c                ó^   <€ \         SV `  W4       \        V P                  4      ^8X  g   Q hR# )é   N)r$   r   r   r&   r'   s   &&&€r   r   Ú$_UFuncBinaryResolutionError.__init__7   s'   ø€ Ü‰Ñ˜Ô'Ü�4—;‘;Ó 1Ô$Ð$Ò$r   c                óf   € R P                   ! V P                  P                  .V P                  O5!  # )z7ufunc {!r} cannot use operands with types {!r} and {!r})Úformatr   r   r&   r,   s   &r   r-   Ú#_UFuncBinaryResolutionError.__str__;   s6   € àEß
‰&ðð �J‰J×Ñð
ð #'§+¡+ó
ð 	
r   © r/   r1   s   @@r   r3   r3   4   s   ù‡ € á1õ%÷
ò 
r   r3   c                   ó2   a a€ ] tR t^Ct oV 3R ltRtVtV ;t# )Ú_UFuncCastingErrorc                óJ   <€ \         SV `  V4       W n        W0n        W@n        R # r   )r$   r   ÚcastingÚfrom_Úto)r   r   r>   r?   r@   r(   s   &&&&&€r   r   Ú_UFuncCastingError.__init__E   s   ø€ Ü‰Ñ˜ÔØŒØŒ
ØŽr   )r>   r?   r@   )r   r   r   r   r   r   r   r0   r1   s   @@r   r<   r<   C   s   ù‡ € ÷õ r   r<   c                   ó<   a a€ ] tR t^Lt oRtV 3R ltR tRtVtV ;t	# )Ú_UFuncInputCastingErrorz+Thrown when a ufunc input cannot be casted c                ó4   <€ \         SV `  WW44       WPn        R # r   )r$   r   Úin_i©r   r   r>   r?   r@   Úir(   s   &&&&&&€r   r   Ú _UFuncInputCastingError.__init__O   s   ø€ Ü‰Ñ˜¨Ô3ØŽ	r   c           
     óè   € V P                   P                  ^8w  d   V P                   R2MRpRV P                   P                  : RV RV P                  : RV P
                  : RV P                  : 2
# )r   Ú Ú úCannot cast ufunc z input úfrom ú to ú with casting rule )r   r+   rE   r   r?   r@   r>   ©r   Úi_strs   & r   r-   Ú_UFuncInputCastingError.__str__S   sf   € à#'§:¡:§>¡>°QÔ#6�4—9‘9�+˜Q‘¸Bˆà  §¡×!4Ñ!4Ñ 7°w¸u¸gÀUØ�z‰z‰n˜D §¡¡Ð+>¸t¿|¹|Ñ>NðPð	
r   )rE   r/   r1   s   @@r   rC   rC   L   s   ù‡ € á6õ÷
ò 
r   rC   c                   ó<   a a€ ] tR t^\t oRtV 3R ltR tRtVtV ;t	# )Ú_UFuncOutputCastingErrorz,Thrown when a ufunc output cannot be casted c                ó4   <€ \         SV `  WW44       WPn        R # r   )r$   r   Úout_irF   s   &&&&&&€r   r   Ú!_UFuncOutputCastingError.__init___   s   ø€ Ü‰Ñ˜¨Ô3ØŽ
r   c           
     óè   € V P                   P                  ^8w  d   V P                   R2MRpRV P                   P                  : RV RV P                  : RV P
                  : RV P                  : 2
# )r   rJ   rK   rL   z output rM   rN   rO   )r   ÚnoutrV   r   r?   r@   r>   rP   s   & r   r-   Ú _UFuncOutputCastingError.__str__c   sg   € à$(§J¡J§O¡O°qÔ$8�4—:‘:�,˜aÑ ¸bˆà  §¡×!4Ñ!4Ñ 7°xÀ¸wÀeØ�z‰z‰n˜D §¡¡Ð+>¸t¿|¹|Ñ>NðPð	
r   )rV   r/   r1   s   @@r   rT   rT   \   s   ù‡ € á7õ÷
ò 
r   rT   c                   óP   a € ] tR t^lt o RtR t]R 4       t]R 4       t	R t
RtV tR# )Ú_ArrayMemoryErrorz(Thrown when an array cannot be allocatedc                ó   € Wn         W n        R # r   )ÚshapeÚdtype)r   r^   r_   s   &&&r   r   Ú_ArrayMemoryError.__init__o   s   € ØŒ
ØŽ
r   c                óh   € V P                   P                  pV P                   F  pW,          pK  	  V# r   )r_   Úitemsizer^   )r   Ú	num_bytesÚdims   &  r   Ú_total_sizeÚ_ArrayMemoryError._total_sizes   s-   € à—J‘J×'Ñ'ˆ	Ø—:”:ˆCØÕŠIñ àÐr   c                óÄ  € ^
pRp. ROp\        V P                  4       ^,
          ^4      V,          p^WA,          ,          pW,          p?\        V4      V8X  d   V^,          pWb,          pV\        V4      8¼  d2   \        V4      ^,
          pV^WG,
          V,          ,          ,          pTpW4,          pV^ 8X  d	   VR RV 2# \        V4      R8  d	   VR RV 2# VR RV 2# )z4Convert a number of bytes into a binary size string i   z.0frJ   iè  z#.3gz#.0f)ÚbytesÚKiBÚMiBÚGiBÚTiBÚPiBÚEiB)ÚmaxÚ
bit_lengthÚroundr   )	rc   Ú	LOG2_STEPÚSTEPÚunitsÚunit_iÚunit_valÚn_unitsÚ
new_unit_iÚ	unit_names	   &        r   Ú_size_to_stringÚ!_ArrayMemoryError._size_to_stringz   sô   € ð
 ˆ	ØˆÚCˆä�Y×)Ñ)Ó+¨aÕ/°Ó3°yÕ@ˆØ˜Õ+Õ,ˆØÕ&ˆØô �‹>˜TÔ!Ø�a�KˆFØ�OˆGð ”S˜“ZÔÜ˜U› a�ˆJØ�q˜fÕ1°YÕ>Õ?Õ?ˆGØˆFà•Mˆ	à�QŒ;à˜c�] ! I ;Ð/Ð/Ü�7‹^˜dÔ"à˜d�^ 1 Y KÐ0Ð0ð ˜d�^ 1 Y KÐ0Ð0r   c                óv   € V P                  V P                  4      pR V RV P                   RV P                   2# )zUnable to allocate z for an array with shape z and data type )rz   re   r^   r_   )r   Úsize_strs   & r   r-   Ú_ArrayMemoryError.__str__Ÿ   s?   € Ø×'Ñ'¨×(8Ñ(8Ó9ˆØ% h ZÐ/HØ—:‘:�,˜o¨d¯j©j¨\ð;ð 	<r   )r_   r^   N)r   r   r   r   r   r   Úpropertyre   Ústaticmethodrz   r-   r   r   r   s   @r   r\   r\   l   s@   ø‡ € á3òð ñó ðð ñ"1ó ð"1÷H<ð <r   r\   N)r   r   r   Ú	TypeErrorr   r"   r3   r<   rC   rT   ÚMemoryErrorr\   r:   r   r   Ú<module>rƒ      sÅ   ðñòòô�Yô ð ô
˜ó 
ó ð
ð ô
Ð"3ó 
ó ð
ð ô˜ó ó ðð ô
Ð0ó 
ó ð
ð ô
Ð1ó 
ó ð
ð ô5<˜ó 5<ó ò5<r   