
    Ph:\                        d dl Z d dlZd dlmZ d dlZd dlmZmZm	Z	m
Z
mZmZ d Zej                  j                  dddg      d        Zej                  j                  d	 ej"                  d
       ej"                  g d       ej$                  d      j'                  d
d      f      d        Zd Zej                  j                  dddg      d        Zej                  j                  dg d      d        Zd Zej                  j                  dej2                  d   ej2                  d   z   ej2                  d   z         d        Zej                  j                  ddgej6                  ej8                  fej:                  ej8                  f ej<                  d       ej<                  d      fg      d         Zej                  j                  ddgej6                  ej8                  fej:                  ej8                  f ej<                  d       ej<                  d      fg      d!        Z ej                  j                  d"e!e"ej:                  ejF                  g      ej                  j                  d#ejH                  ejJ                  ejL                  g      d$               Z'ej                  j                  dejP                  d%         d&        Z)d' Z*d( Z+d) Z,d* Z-d+ Z.d, Z/ej                  j                  g d-d.d/d0g ej"                  d/d0gd/d0gg      fd1d2d3g ej"                  d2d3gd2d3gd2d3gg      fg      d4        Z0d5 Z1y)6    N)rational)assert_assert_equalassert_array_equalassert_raisesassert_warnsHAS_REFCOUNTc                     t        t              } t        j                  dt        j                        }t        |      }t        t        j                  |t        j                        |       t        rIt        j                  |      }t        j                  |       t        |t        j                  |             t        t        j                  d t        j                        t        j                  t        j                  t        j                               t        rYt        j                  |       }t        j                  d t        j                         t        |t        j                  |              t        t        j                  dt        j                        t        j                  dt        j                               t        rt        j                  t        j                        }t        j                  t        j                  dt        j                        t        j                         t        |t        j                  t        j                               t        j                  t        df      }t        j                  t        df      }t        j                  t        df      }t        t        j                  dt        j                        t        j                  dt        j                               t        t        j                  d      j                  |       t        t        j                  dt              j                  |       t        t        j                  d|      t        j                  d	             t        t        j                  d
|      t        j                  d|             t        j                  t        df      }t        j                  t        df      }t        j                  t        df      }	t        t        j                  dt        j                        t        j                  dt        j                               t        t        j                  d      j                  |       t        t        j                  dt              j                  |       t        t        j                  d|      t        j                  t        d                   t        t        j                  d|	      t        j                  d|	             t        t        dt              }
t!        t#        |
d             t        j                  t%        d      t        j                        }t        |g d       t!        |j                  j                   t        j                  u        t        j                  t%        d            }t        |g d       t!        |j                  j                   t        j&                  u        t        j                  dt        j                        }t        dt        ft)        |j*                              }t        t        j                  |t        j                        |       t        j                  ddgdt,        fdt.        fdt        fg      }t        dt        ft)        |j0                              }t        t        t        j                  |      j2                        t        |j2                                t        dt        ft)        d                    }t        t        j                  |t        j                        t        j                  dt        j                               d}t5        t        j6                        D ]  }|g} t        j                  |       t9        t:        t        j                  |gt        j                         t        t        j                  d gdz  t        j<                        t        j>                  dt        j                  t        j<                               t        t        j                  d ggdz  t        j<                        t        j>                  d t        j                  t        j<                               t        t        j                  d gdz  gt        j<                        t        j>                  d!t        j                  t        j<                               t        t        j                  d gdz  gdz  t        j<                        t        j>                  d"t        j                  t        j<                               t        t        j                  d gdz  t        j                        t        j>                  dt        j                  t        j                               t        t        j                  d ggdz  t        j                        t        j>                  d t        j                  t        j                               t        t        j                  d gdz  gt        j                        t        j>                  d!t        j                  t        j                               t        t        j                  d gdz  gdz  t        j                        t        j>                  d"t        j                  t        j                               t        t        j                  dgdz  t        j                        t        j                  dt        j                               t        t        j                  dggdz  t        j                        t        j                  d t        j                               t        t        j                  dgdz  gt        j                        t        j                  d!t        j                               t        t        j                  dgdz  gdz  t        j                        t        j                  d"t        j                               t        t        j                  d#t        j                        t        j>                  dt        j                  t        j                               t        t        j                  d$gdz  t        j                        t        j>                  d t        j                  t        j                               t        t        j                  d#gt        j                        t        j>                  d!t        j                  t        j                               t        t        j                  d#gdz  t        j                        t        j>                  d"t        j                  t        j                               t        t        j                  d%t        j                        t        j                  dt        j                               t        t        j                  d&gdz  t        j                        t        j                  d t        j                               t        t        j                  d%gt        j                        t        j                  d!t        j                               t        t        j                  d%gdz  t        j                        t        j                  d"t        j                               y )'N)   r   dtype      ?          s   1.0s   1.   1z1.0z1.1__dict__get)g     H@g      G@g      H@)1   .   0         Y@o)__array_interface__)r         @Hello)r         @Worldf0f1f2)__array_struct__c                  L    t        j                  dt         j                        S )Nr   r   )nparrayfloat64)xs    dC:\Users\daisl\Desktop\realtime-object-detection\venv\Lib\site-packages\numpy/core/tests/test_api.py<lambda>z"test_array_array.<locals>.<lambda>Z   s    rxxRZZ'H    )	__array__      ?
   )r/   )r/   r   )r   r/   )r/   r/   )
NNNNNNNNNNN)
r   r   r   r   r   r   r   r   r   r   )r   ) typeobjectr&   onesr(   r   r'   r	   sysgetrefcountnanr   bytesstrgetattr__builtins__r   hasattr
memoryviewuint8dictr   intfloatr$   datarangeMAXDIMSr   
ValueErrorfloat32full)tobjones11tndarrayold_refcountS2S3S5U2U3U5builtinsdatar   nestedis                   r*   test_array_arrayrV      s	   <DWWVRZZ(FF|H&

3V<x0
\3??8#<= $bjj1"&&

35t,
RZZ(\3??4#89 #RZZ02::.0rzz2
#RZZ0

C\3??2::#>? 
5!*	B	5!*	B	5!*	B&

32::.0&!'',&.44b9&+RXXe_=$b)2772R+@A 
3(	B	3(	B	3(	B%rzz22::.0%&&+%s+1126%r*BHHSY,?@#R("''"B*?@|Z>HGHe$% ((:f%RZZ
8C()CIINNbjj()
((:f%
&Cl#CIINNbhh&' 	bjj)AS6)a&;&;<	>A!2::.2 	#%67sdE]T3K@	BAS6)1#5#56	8A rxx{''(%-8	KS6)HI	K 	MA!2::.

0KL F2::  HHV *bhh

C 4&2+RZZ8bjj9;D6(R-rzz:"&&

;=D6B;-rzz:"&&

;=D6B;-",BJJ?266<> 4&2+RZZ8bjj9;D6(R-rzz:"&&

;=D6B;-rzz:"&&

;=D6B;-",BJJ?266<> 3%"*BJJ7bjj13C5'B,bjj9

35C52:,bjj9

35C52:,+2::>46 ,bjj9bjj9;7)b.

;"&&

;=<.

;"&&

;=<.2-RZZ@266<> +RZZ8bjj136(R-rzz:

35;-rzz:

35;-",BJJ?46r,   r'   TFc                     t        dd      }| rt        j                  |      }t        t              5  t        j                  |d       d d d        y # 1 sw Y   y xY w)Nr   r   M8r   )r   r&   r'   r   	TypeError)r'   rts     r*   test_array_impossible_castsr[      sA     
!QBXXb\	y	!
4  
"	!	!s   AArS   r   )r   r      r      r   c                     t        j                         5  t        j                  |       }t	        || j
                         |j                  j                  sJ 	 d d d        y # 1 sw Y   y xY wr0   )pytestdeprecated_callr&   fastCopyAndTransposer   Tflagsowndata)rS   bs     r*   test_fastCopyAndTransposerf      sJ     
			!##A&Qww 
"	!	!s   AA##A,c                  P   t        j                  dd      j                  dd      } | j                  d      }t	        | |       t	        |j
                  t        j
                  d             t	        | j                  |j                         | j                  j                  d      }t	        | j                  |       t	        |j
                  t        j
                  d             t	        | j                  j                  |j                         | j                  d      }t	        | |       t        | |u       | j                  dd      }t        | |u        | j                  dd	d
      }t	        | |       t        | |u       t        |j                  j                         | j                  ddd
      }t	        | |       t        | |u        t        |j                  j                         | j                  dd      }t	        | |       t	        |j
                  t        j
                  d             t        t        | j                  dd       | j                  ddd      }t        | |u         G d dt         j                        }t        j                  g dg dgd      j!                  |      } | j                  ddd      }t        | |u        | j                  dd      }t	        | |       t	        t#        |      |       | j                  ddd      }t	        | |       t        | |u       t        t#        |      |u       t        j                  dgd      } | j                  d      }t	        | |       t	        |j
                  t        j
                  d             t        j                  dgd      } | j                  d      }t	        | |       t	        |j
                  t        j
                  d             t        j                  dgd      } | j                  d      }t	        | |       t	        |j
                  t        j
                  d             t        j                  dgd      } | j                  d      }t	        | |       t	        |j
                  t        j
                  d              t        j                  d!d      j                  d      } t%        | t        j                  d"d#             t        j                  d!d      j                  d      } t%        | t        j                  d$d%             t        j                  d!gd      j                  d      } t%        | t        j                  d"d#             t        j                  d!gd      j                  d      } t%        | t        j                  d$d%             t        j                  d!d      } t%        | t        j                  d"d#             t        j                  d!d      } t%        | t        j                  d$d%             t        j                  d&d      } t        j                  | d'd(      }t        |j&                  dk(         t        j                  d)gd      } t        t        | j                  d*d       t        j                  d)d      } t        t        | j                  d+d       t        t        | j                         y ),Nr]   f4r   r   r   i4FcopyF)orderrk   Cc8safecastingr   )subokrk   c                       e Zd Zy)$test_array_astype.<locals>.MyNDArrayN)__name__
__module____qualname__r   r,   r*   	MyNDArrayru      s    r,   ry   )r   r   r   )r      r   Tsd   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaOSS100daaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaUU100s
   aaaaaaaaaaS10
aaaaaaaaaaU10l   
~l!]c s   123456789012345678901234567890S30123456789012345678901234567890U30u   aŀuint32)bufferr   shapei  S1U1)r&   arangereshapeastyper   r   stridesrb   r   rc   f_contiguousc_contiguousr   rY   ndarrayr'   viewr1   r   size)rS   re   ry   s      r*   test_array_astyper      s0   
		!4 ((A.A 	
AA"((4.)AII&	

4Aa"((4.)aii(	AAa 	
E"AAFO 	
Su-AAaAGG  !	Su-AAAFOAGG  ! 	
v&AA"((4.))QXXtV< 	
QU+AAFOBJJ  	)Y't499)DA 	
T.AAFO 	
E"AAa)$ 	
U/AAaDG9$% 	(3'A	AA"((6*+
'#&A	AA"((6*+ 	'#&A	AA"((5/*
&%A	AA"((5/*
/s;BB3GAq"((#4EBC
/s;BB3GAq"((#35AB
01=DDSIAq"((#4EBC
01=DDSIAq"((#35AB
/s;Aq"((#4EBC
/s;Aq"((#35AB
#&A


!815AAFFaK
$t$A)QXXtV<
T"A)QXXtV< )QXX&r,   dtr|   r   c                 l   t        j                  dgt              }|j                  |       j                  j
                  t        j                  |  d      j
                  k(  sJ t        j                  || d      sJ t        j                  || d      rJ t        j                  d| d      sJ y )N r   r   unsaferq   	same_kindr{   )r&   r'   r2   r   r   itemsizecan_castr   arrs     r*   +test_array_astype_to_string_discovery_emptyr   "  s     ((B4v
&C ::b>((BHHt1X,>,G,GGGG ;;sB111{{3K888;;sB111r,   )dfS13U32c                     t        j                  |       } t        j                  g |       }|j                  d      j                  j                  | j                  k(  sJ y )Nr   V)r&   r   r'   r   r   r   s     r*   test_array_astype_to_voidr   0  sE    	"B
((2R
 C::c?  ))R[[888r,   c                  r    t        j                  g d      j                  d      } | j                  dk(  sJ y )Nr{   r   r   V8)r&   r'   r   r   )r   s    r*    test_object_array_astype_to_voidr   6  s1     ((2S
!
(
(
-C99r,   tuintr?   r@   c                     t        j                  dt         j                        }t        t         j                  |j
                  |        y )Nr/   r   )r&   r'   complex_r   ComplexWarningr   )r   rS   s     r*   test_array_astype_warningr   <  s.    
 	2;;'A""AHHa0r,   r   	out_dtypezS10,S9z?,?c                     t        j                  g d|       }t        j                  g d|      }t        |j                  |      |       y)z
    Currently, for `astype` strings are cast to booleans effectively by
    calling `bool(int(string)`. This is not consistent (see gh-9875) and
    will eventually be deprecated.
    )10z10   z0  0r   )TTFFN)r&   r'   r   r   )r   r   r   expecteds       r*   test_string_to_boolean_castr   D  s9     ((35
ACxx2)DHszz),h7r,   c                     dD ]C  }t        j                  |g|       }t        t              5  |j	                  |       ddd       E y# 1 sw Y   PxY w)zn
    These currently error out, since cast to integers fails, but should not
    error out in the future.
    )FalseTruer    z	non-emptyr   N)r&   r'   r   rD   r   )r   r   invalidr   s       r*   "test_string_to_boolean_cast_errorsr   R  sC     <hhy.:&JJy! '& <&&s   A

A	str_typescalar_typec                 8    |d      } ||      dk(  sJ t        j                  |gt              j                  |      d   dk(  sJ t        j                  |      j                  |      d   dk(  sJ t        j                  d|      }||d<   |d   dk(  sJ y )Ns   1+3jy      ?      @r   r   r   r   )r&   r'   r2   r   zeros)r   r   valuer   s       r*   test_string_to_complex_castr   `  s      Eu%%%88UG6*11+>rBdJJJ88E?!!+.r2d:::
((1K
(CCFq6T>>r,   AllFloatc                    t        j                  d|       }d |d<   t        j                  |      d   sJ t        j                  t        j                  d |             d   sJ t        j                  t        j                  d g|             d   sJ t        j                  t        j                  d       j	                  |             d   sJ y )Nr   r   r   r   )r&   r   isnanr'   r   )r   r   s     r*   test_none_to_nan_castr   l  s     ((1E
"CCF88C=88BHHT/044488BHHdV512155588BHHTN))%01"555r,   c                  $   t        j                  dd      j                  dd      } t        j                  | d       t	        | d       t        j                  | j
                  d       t	        | d       t        j                  g dg d	gd
      }t        j                  | d|       t	        | g dg dg       t        j                  ddgddgddggd
      }t        j                  | j
                  d|       t	        | g dg dg       y )Nr]   rh   r   r   r   r.         @)r   r   r   )r   r   r   ?      @where)r   r   r   )r   r   r   r   r         @)r   r   r   )r   r   r   )r&   r   r   copytor   rb   r'   )rS   masks     r*   test_copyto_fromscalarr   w  s    
		!4 ((A.A IIaCIIacc3C 88Y	*#6DIIaD!_o6788aVaVaV,C8DIIacc3d#_o67r,   c                     t        j                  dd      j                  dd      } t        j                  | g dg dg       t	        | g dg dg       t        j                  | d d d df   | d d dd	d df          t	        | g d
g dg       t        t        t         j                  | d       t        j                  | dd       t	        | d	       t        j                  | dg d       t	        | g dg dg       t        t        t         j                  | dg d       t        j                  | ddg dg dg       t	        | g dg dg       t        j                  | d d d df   | d d dd	d df   dd	gd	d	gg       t	        | g dg dg       t        t        t         j                  g dg d       y )Nr]   ri   r   r   r   )r   r   r   )r]   r   r   r   )r   r]   r   r   r   r   r.   r   rq   )TFTr   )r   r   r   r   r   )r   r   r   )r   r   r   )rr   r   )r   rz   rz   )rz   r   r   r   )rz   r   r   r   r   r   )r   r   rz   )r&   r   r   r   r   r   rY   )rS   s    r*   test_copytor     sq   
		!4 ((A.A IIa)Y'(Y	*+ IIa2A2h$B$2+'Y	*+ )RYY3/ IIah'A IIa-.Y	*+ )RYY36IJ IIahy).DEY	*+ IIa2A2h$B$2+1v1v.>?Y	*+ )RYY	9=r,   c            
      f   d} dg| z  g dz   }t        j                  t        |      | z
        }t        j                  t        |      | z
        }t        j                  |      | d  }t        j
                  |||d d d          d}t        j                  |      }t        d|z        D ]  }t        j                  |      }t        |      D cg c]
  }||z  dk7   }}t        j                  |      }t        j
                  |||       t        |d	k(  |       t        |j                         t        |             t        j                  |      }t        j
                  |||d d d          t        |d	k(  |d d d          t        |j                         t        |             t        j                  |      }t        j
                  |d d d   |d d d   |d d d          t        |d d d   d	k(  |d d d          t        |d d d   j                         t        |d d d                t        j                  |      }t        j
                  |d d d   |d d d   |d d d
          t        |d d d   d	k(  |d d d
          t        |d d d   j                         t        |d d d
                dD ]  }t        j                  |      }t        j                  |      }t        j                  |      j                  t         j                        }	||	|dk7  <   t        j
                  |||       t        |d	k(  |       t        |j                         t        |               t        j                  |      }t        j
                  ||d       t        |j                         |j                         t        j                  |      }t        j                  |      }t        j
                  ||d       t        |j                         |j                         y c c}w )Ni  T)TTTTr   r   	   r   r   r   )      r      F)r&   r   lenr3   r'   r   rB   r   r   sumr   r=   r   )
padlrr   r   powerrU   r)   cimasks
             r*   test_copyto_permutr     s7   
C	//A
QA
As
A88A;stDIIa$tt*% E
A1e8_HHUO#(<0<aa!e\<0xx{
		!Qd#161%QUUWc!f%HHUO
		!Qd4R4j)161TrT7+QUUWc!f%HHUO
		!CaC&!CaC&SqS	21SqS6Q;#A#/QssVZZ\3q1v;/HHUO
		!CaC&!CaC&TrT
31SqS6Q;$B$0QssVZZ\3q2w<0)AA88A;DHHQK$$RXX.E E$!)IIa$'qAvq)#a&) */ @ 	AIIa$!&&!
A
AIIa% !&&!I 1s   P.c                  $   t        j                  d      j                  dddd      } | j                  d      }t        j                  d      j                  dddd      j	                  dd      }dfd		}t        | j                  j                         t        | j                  j                          t        |j                  j                          t        |j                  j                         t        |j                  j                          t        |j                  j                          | j                  d
       || ddd       |j                  d
       ||ddd       |j                  d
       ||ddd       t        j                  | d
       || ddd       t        j                  |d
       ||ddd       t        j                  |d
       ||ddd       | j                  d       || ddd       |j                  d       ||ddd       |j                  d       ||ddd       t        j                  | d       || ddd       t        j                  |d       ||ddd       t        j                  |d       ||ddd       | j                  d       || ddd       |j                  d       ||ddd       |j                  d       ||ddd       t        j                  | d       || ddd       t        j                  |d       ||ddd       t        j                  |d       ||ddd       y )N   r   r   r   rz   rl   rm   Fc                     t        | |u       t        | |       t        j                  j                  |       t        j                  j                  |       y r0   )r   r   rc   r   r   )r)   yccontigfcontigr   ress        r*   check_copy_resultz*test_copy_order.<locals>.check_copy_result  sA    Q!VQSYY++W5SYY++W5r,   rn   T)r   r   r   K)F)	r&   r   r   rk   swapaxesr   rc   r   r   )rS   re   r   r   r   s       @r*   test_copy_orderr     s!   
		"aAq)A	SA
		"aAq)221a8A6 AGG  !$$$%$$$%AGG  !$$$%$$$% &&s&
Cc1dE4H
&&s&
Cc1dE5I
&&s&
Cc1dE5I
''!3
Cc1dE4H
''!3
Cc1dE5I
''!3
Cc1dE5I &&s&
Cc1eT5I
&&s&
Cc1eT4H
&&s&
Cc1eT5I
''!3
Cc1eT5I
''!3
Cc1eT4H
''!3
Cc1eT5I &&s&
Cc1dE4H
&&s&
Cc1eT4H
&&s&
Cc1eUDI
''!3
Cc1dE4H
''!3
Cc1eT4H
''!3
Cc1eUDIr,   c            	         t        j                  d      d d dd d d d f   } | j                  d d dz   | _        t        j                  d      j                  dd      }d } || dd        ||dd        |t        j                  d	      d
d
        |t        j
                  dgdgggd      d
d
        |t        j                  d      d
d        |t        j                  dd      dd
        |t        j
                  | d      dd        |t        j
                  | dd      d
d        |t        j
                  | ddd      dd
        || d   d
d
        || d d d ddd f   d
d
        ||d   dd
        ||d d d d ddd d d d f   d
d
        || j                         d
d
        |t        j                  d      j                         d
d
       y )N)rz   rz   r   r   )i)r   r   r   r   r   r   rz   c                     t        | j                  j                  |k(         t        | j                  j                  |k(         y r0   )r   rc   r   r   )rS   r   r   s      r*   check_contigz+test_contiguous_flags.<locals>.check_contig#  s0    $$/0$$/0r,   F)r   r   r   r   r   Tr   rl   r   r   r   rj   rn   )rk   rm   )ndminrk   rm   r   .)r   r   .r   )r&   r3   r   r   emptyr'   ravelsqueeze)rS   re   r   s      r*   test_contiguous_flagsr     s   
	3Q3q7#A		"1'AI
 ))!Q/A1
 E5!E5!/*D$7QC!:,c2D$?&!4/&,eT: !%(%7!%s3T5A!15<eTJ 1tT"41c4'($59ud+1a1a?#T40 D$'#++-tT:r,   c                  *   t        j                  dgd      } t        j                  g dd      }t        j                  | |      }t        |d   t        j                  g dd             t        |d   t        j                  g dd             y )Nr   zu4,u4,u4r   )r   )rz   r   r]   )r\      r   r   )r   r   r   r   )r&   r'   broadcast_arraysr   )rS   re   results      r*   test_broadcast_arraysr   >  sk    
)J/A
2*EA  A&FBHH%FjYZBHH%FjYZr,   )r   
fill_valueexpected_outputr   g      @r   )r   r   r   g       @c                 H    t        j                  | |      }t        ||       y r0   )r&   rF   r   )r   r   r   outputs       r*   test_full_from_listr  F  s     WWUJ'F)r,   c                     t        j                  dt         j                        } | j                  t         j                  d      }t        j                  | |      rJ | j                  t         j                  t         j
                  j                        }t        j                  | |      rJ | j                  t         j                  d      }t        j                  | |      sJ | j                  t         j                  t         j
                  j                        }t        j                  | |      sJ | j                  t         j                  t         j
                  j                        }t        j                  | |      sJ | j                  t         j                  d      }t        ||        | j                  t         j                  t         j
                  j                        }t        ||        t        t        | j                  t         j                  t         j
                  j                         y )Nr/   r   Trj   F)r&   r   intpr   may_share_memory	_CopyModeALWAYS	IF_NEEDEDNEVERr(   r   r   rD   )r   res_true
res_always	res_falseres_if_needed	res_nevers         r*   test_astype_copyflagr  M  s   
))Bbgg
&Czz"''z-H""3111BGG",,*=*=>J""3
333

277
/IsI...JJrwwR\\-C-CJDMsM222

277););
<IsI... 

2::E
2Iy#&JJrzz$&LL$:$:  <M}c**cjj"**||))+r,   )2r4   numpyr&   numpy.core._rational_testsr   r_   numpy.testingr   r   r   r   r   r	   rV   markparametrizer[   r'   r   r   rf   r   r   r   r   sctypesr   bytes_bool_str_r   r   r   r8   r7   unicode_	complex64
complex128clongdoubler   	typecodesr   r   r   r   r   r   r   r  r  r   r,   r*   <module>r     sg   
  /  J6X 4-0! 1! 		!Q"n'` Sz*2 +2 789 99
 JJvE**RZZ-@@11
 ';/
))RXX	
''288	
"((8
hbhhuo	.	018	18 ';/
))RXX	
''288	
"((8
hbhhuo	.	01"	1" c5"''2;;%GH	r}}bnn577 I ",,z":;6 <68"">H3"j;Jz;@[ C
3+xrxx#sc3Z(@A	B
3+xrxx#sc3Z#(MN	O	QR*R*+r,   