+
    eiD  c                   s    ^ RI Ht ^ RIt^ RIt^ RIHtHtHt R t	R t
R t]P                  P                  RR4      R 4       tR	 tR
 tR tR tR tR t ! R R4      tR# )    )chainN)assert_array_equalassert_equalassert_raisesc            	      s   . RO. RO.. RO. RO..p R F  p\         P                  ! WR7      p\         P                  ! VR	R7      p\        VP                  \         P
                  4       \        V\         P                  ! ^.^@..^.^ ...4      4       K  	  \        \        \         P                  \         P                  ! V \        R7      4       R# )
   ?bBhHiIlLqQdtypeaxisN)r   r    r   )r    r   r    )r   r   r    )r    r    r   )
nparraypackbitsr   r   uint8r   r   	TypeErrorfloat)adtarrb       D/usr/lib64/python3.14/site-packages/numpy/lib/tests/test_packbits.pytest_packbitsr   	   s    
Y	
Y		!Ahhq#KK"%QWWbhh'1bhh#t}'EFG	  )R[["((1E*BC    c                  s    . ROp R Fs  pV  Fj  p\         P                  ! W!R7      p\         P                  ! V4      p\        VP                  \         P
                  4       \        VP                  R4       Kl  	  Ku  	  R# )r    r   r   Nr    )r   
      r    r   r    r   r    r   r   r   r    r    r    r   r    r    r    r   r    r    r    )r   emptyr   r   r   r   shape)shapesr   r%   r   r   s        r   test_packbits_emptyr'      sZ    F E)AAA"((+$'	  r   c            
      sx   RR.3R. RO3R. R	O3R
. RO3R. RO3R. RO3R. RO3R. RO3.p R F  pV  F  w  r#\        V4       Fm  w  rE\        P                  ! W!R7      p\        P                  ! WdR7      p\	        VP
                  \        P                  4       \	        VP                  V4       Ko  	  K  	  K  	  R# )r    r   r   r	   Nr   r   ))   r   r    )r      r    r   r   ))r(   r    r   r   )r   r    r)   r   )r   )r    r(   r   )r    r   r)   r    )r)   r    r    r    r    r!   )r!   r    r)   r    r!   r"   )r"   r"   r    r    r)   r#   r#   r#   r#   )	enumerater   r$   r   r   r   r   r%   )r&   r   in_shapeZ
out_shapesax	out_shaper   r   s           r   test_packbits_empty_with_axisr2   #   s     
v	;<	;<	;<	89	89	89	56	F $* H!*:!6HHX0KK+QWWbhh/QWWi0	 "7 %+ r   bitorderc                 s~   \         P                  ! . ^N^N^ N^N^N^N^ N^ N^ N^ N^N^N^N^ N^ N^N^N^N^ N^ N^ N^ N^ N^N^ N^N^N^N^ N^ N^ N^ N^ N^N^ N^ N^ N^N^N^N^N^N^ N^N^ N^N^N^ N^ N^ N^N^N^N^N^ N^ N^ N^N^ N^ N^N^N^ N^ N^ N^N^ N^N^N^ N^ N^ N^N^ N^ N^N^N^N^N^N^N^ N^N^ N^N^ N^ N^N^ N^N^N^ N^N^ N^N^N^ N^N^ N^N^N^ N^N^ N^N^ N^N^N^ N^ N^ N^ N^N^ N^N^ N^ N^ N^N^N^N^ N^ N^ N^N^ N^N^ N^N^N^ N^N^ N^ N^N^ N^N^N^N^N^ N^N^N^ N^ N^ N^N^N^ N^ N^N^ N^N^ N^ N^N^ N^ N^N^N^N^N^N^N^N^N^ N^N^N^ N^ N^ N^N^ N^ N^ N^ N^N^N^ N^N^N^ N^ N^ N^ N^N^N^N^N^ N^N^ N^ N^ N^ N^ N^N^N^N^N^ N^ N^ N^ N^N^N^N^N^N^ N^N^N^ N^N^N^ N^ N^ N^ N^ N^N^ N^ N^N^N^ N^ N^N^ N^N^N^ N^ N^ N^ N^N^N^ N^N^N^N^ N^N^ N^N^N^N^ N^ N^N^ N^ N^ N^N^ N^N^N^ N^ N^N^ N^ N^N^ N^ N^ N^N^ N^N^N^N^N^N^N^ N^N^ N^N^ N^N^ N^N^ N^ N^N^N^ N^N^ N^N^ N^ N^N^ N^N^ N^N^N^ N4      pVP                  ^4      pR EF  p\         P                  ! WR7      p\         P                  ! VRV R7      p\	        VP
                  \         P                  4       . ^N^N^N^N^N^N^N^ N^N^N^N^ N^N^N^N^N^qN^N^N^N^N^N^N^N^N^~N^ N^N^N^N^N^N^N^N^N^?N^N^~N^8N^N^N^ N^N^N^?N^N^N^8N^N^pN^8N^N^N^N^N^N^8N^N^pN^?N^N^N^N^N^N^ N^N^N^N^N^N^N^ N^N^N^N^N^N^N^~N^?N^ N^N^N^N^N^?N^ N^N^N^N^qN^N^N^N^8N^N^N^N^ N^qN^N^N^N^8N^N^N^N^N^N^N^N^NpV R8X  d   \        WE4       \        \         P                  ! W@R7      RR
 V4       \        ^^4       Uu. uF&  p\         P                  ! VRV)  RR7      R,          NK(  	  pp\        V. RO4       VP                  ^$^4      p\         P                  ! V^ R7      p\	        VP
                  \         P                  4       \        V. RO. RO. RO. RO. RO.4       \         P                  ! V^R7      p\	        VP
                  \         P                  4       \        V. . RON. RON. RON. RON. RON. RON. RON. RON. RON. RON. RON. RON. RON. RON. R ON. R!ON. R"ON. R#ON. R$ON. R%ON. RON. R&ON. R'ON. R(ON. R)ON. R*ON. R+ON. R,ON. R-ON. R.ON. R/ON. R0ON. R1ON. R2ON. R3ON. R4ON4       VP                  P                  4       p\         P                  ! V^ R7      p\	        VP
                  \         P                  4       \        V. ^N^N^N^N^N^N^N^N^~N^N^8N^qN^N^ N^N^N^8N^N^N^N^~N^N^ N^N^N^N^ N^N^ N^N^N^N^qN^N^N^N. ^N^N^ N^N^N^?N^N^N^ N^N^N^N^N^N^N^~N^N^N^N^N^ N^N^N^ N^N^N^N^qN^N^?N^N^N^N^qN^N^8N. ^N^N^N^ N^N^ N^N^N^N^N^~N^N^?N^pN^N^8N^N^N^N^N^N^N^N^N^N^~N^N^N^N^N^?N^N^N^N^N^N. ^ N^N^ N^N^N^ N^ N^ N^ N^ N^ N^N^ N^ N^N^ N^N^ N^N^ N^ N^ N^N^N^N^ N^N^ N^N^ N^ N^ N^N^ N^ N^ N.4       \         P                  ! V^R7      p\	        VP
                  \         P                  4       \        V. R5O. R6O. R7O. R8O. R9O. R:O. R;O. R<O. R=O. R>O. R?O. R@O. RAO. RBO. RCO. RDO. REO. RFO. RGO. RHO. RIO. RJO. RKO. RLO. RMO.4       EK  	  R F  p\         P                  ! WR7      p\         P                  P                  \         P                  ! V4      P                   \         P                  ! V4      P"                  VP$                  VR	7      p^Ww^ 8H  &   W7P'                  V4      ,          p\         P                  ! VRR7      p\        \         P                  ! V4      RR
 V4       K  	  \)        \*        \         P                  \         P                  ! V\,        R7      4       R# u upi )Nr   r   r   Nr
   r3   bigr3   r	   Z
bBhHiIlLqQ)ZlowZhighsizer   ir   )   r8   r8      i            r    r    r       i   i      )         rA         W   S   rE      r=         rH      rI      rJ      (   i   k   K   J   X   )H               rF      Z   rX   rE   rE   w      m   I   @            -   )   h   z   rX      )q   x   rT   rS      r;   <   4      rB   rB   rB         rm         ro               rs         )   rm   rm   r]   D      rx   r   rR   rQ   \   ry   N   n   '                  r   rW            )r    r8   r8   r>   P   p   0      r         r^      r8   r   r   r   r^   r   r      r   r   r>   r8   )   rZ   r>   r    )   r      r8   )r   r    r:   r    )ro   r8   r    r8   )r>   r9   ro   r8   )   ?   r    r    )ro   r   r   r    )r   r      r    )~   r    r   r    )ro   ro   r=   r    )8   r:   r   r    )rf   rT   rV   r8   )rV   r   r   r    )r    r:   r   r    )r   rT   r)   r8   )r:   r   r   r    )r   ro   rU   r8   )r   r   r   r    )rV   i   r>   r8   )ro   ro   i   r    )r)   rU   rT   r    )r    ro   rU   r8   )r8   r    ro   r8   )r   r   ro   r8   )rT   r   r   r    )r    r   r)   r8   )r   rf   rT   r    )r    r   rZ   r8   )r   r   r   r    )r   r   r   r    )r   r)   r8   r    )rf   ro   ro   r8   )r:   rf   r=   r    )r   rV   r   r    )r   r   r   r    )r?   rR   rf   rv   r    )r@   rS   rg   rm   r8   )rA   rT   rT   rm   r8   )rA   rU   rS   r]   r>   )rB   rV   rh   rw   r   )rC   rF   r;   rx   r   )rD   rW   ri   rx   r   )rE   rX   rj   r   r   )rE   rX   rk   rR   r   )rF   rE   rB   rQ   r   )r=   rE   rB   ry   r   )rG   rY   rB   ry   r^   )rH   rZ   rl   rz   r   )rH   r[   rm   r{   r8   )rI   r\   rm   r|   r   )rI   r]   rn   r}   r   )rJ   r^   ro   r~   r   )rJ   r_   ro   r   r^   )rK   r`   rp   r   r   )rL   ra   rq   r   r   )rM   rb   rr   r   r   )rN   rc   rs   rW   r   )rO   rd   rs   r   r   )rP   rX   rt   r   r>   )rQ   re   ru   r   r8   )r   r   Zrepeatr   r   r   r   r   
unpackbitsrangeZreshapeTcopyZrandomZrandintZiinfoZminZmaxr7   Zastyper   r   r   )r3   r   r   r   r   rZiZrnds   &       r   test_packbits_larger   7   s     	 N! NQ N N1 Na N NA Nq N! NQ N N1 Na N NA Nq N! NQ N N1 NNNNNN!"N$%N'(N*+N-.N01N34N67N9:N<=N?@NBCNEFNHINKLNNNNNN!"N$%N'(N*+N-.N01N34N67N9:N<=N?@NBCNEFNHINKLN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN 	N 	N 	N 	N  	N "#	N %&	N ()	N +,	N ./	N 12	N 45	N 78	N :;	N =>	N @A	N CD	N FG	N IJ	N LM	N
 N
 N
 N
 N
  N
 "#N
 %&N
 ()N
 +,N
 ./N
 12N
 45N
 78N
 :;N
 =>N
 @AN
 CDN
 FGN
 IJN
 LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN N N N N  N "#N %&N ()N +,N ./N 12N 45N 78N :;N =>N @AN CDN FGN IJN LMN 	OA 	
Ahhq&KK$:QWWbhh'/S /# /s /A /s /A /s /A /q /" /c /1 /b /! /S /# /////"/$&/(*/,//13/58/:;/=@/BE/GJ/////!/#%/')/+./02/47/9</>?/AD/FI/KM/ / / / /  #/ %'/ ),/ .1/ 36/ 89/ ;>/ @B/ DG/ IL/ 	/ 	/ 	/ 	/ !$	/ &(	/ *+	/ -/	/ 14	/ 69	/ ;<	/ >A	/ CF	/ HI	/ KL	/
 /
 /
 /
 /
  #/
 %(/
 *,/
 .//
 12/
 47/
 9</
 >@/
 BD/
 FG/
 IK/ / / /  / "#/ %(/ *,/ .1/ 35/ 78/ :;/ =@/ BE/ GJ/ LO/ QS/ UX/ / / /  / "%/ ')/ +./ uq$2==>sCQG <AB<H<aR[[Sqb-b11<H1 . 	/ kk"b!KK!$QWWbhh'1  1 6 ; 4 >? 	@  KK!$QWWbhh'1 #53 #53#53#5  4#5  4	#5
  4#5  4#5  4#5  4#5  4#5  4#5  4#5  4#5  4#5  4#5  4#5   4!#5"  4##5$  4%#5&  4'#5(  4)#5*  4+#5,  4-#5.  4/#50  41#52  43#54  45#56  47#58  49#5:  4;#5<  4=#5>  4?#5@  4A#5B  4C#5D  4E#5F  4G#5 #	6J eejjlKK!$QWWbhh'1  3  3Q  3  3S  3#  3s  3C  3  3C  3  3 " 3$' 3), 3./ 313 357 39; 3=@ 3BE 3GJ 3 # 3%& 3() 3+. 303 358 3:; 3=@ 3BC 3EH 3JM 3 !" 3 $' 3 )+ 3 -. 3 02 3!7 !7c !71 !7c !72 !7r !73 !7 !7Q !7 !7!#!7%(!7*-!7/1!736!78;!7=@!7BC!7EH!7JM!7!"!7$'!7),!7./!712!747!79:!7<?!7AD!7FH!7JL!7 "#!7 %(!7 *-!7 /2!7 46!7!: !:b !:" !:a !: !:a !: !:B !: !:S !:# !:!$!:&(!:*-!:/0!:24!:69!:;>!:@C!:EH!:JM!:!$!:&)!:+.!:03!:58!::;!:=@!:BE!:GJ!:LN!: "%!: '*!: ,/!: 14!: 69!:!M !MC !M !MC !M !Ma !M !MA !Mq !M! !MQ !M !MQ !M!"!M$'!M)*!M,/!M12!M47!M9:!M<=!M?@!MBE!MGJ!M!$!M&'!M),!M./!M14!M67!M9:!M<=!M?B!MDE!MGH!MJK!MN 	O  KK!$QWWbhh'188888888888888888888888881: 	;K @ hhq&iiBHHUO$7$7%'XXe_%8%8sxx&+   - 1Hzz%  KK"%2==+CR0!4  )R[["((1E*BCq Is   ,b:c                  s    \        R R4       FB  p R F9  p\        P                  ! ^V 3\        R7      p\        P                  ! V^R7       K;  	  KD  	  R# )i  i  r   r   r	   N)r   r   ZonesZboolr   )Zsr   xs      r   test_packbits_very_larger      sA     3Ba-AKK"   r   c            	      s(   \         P                  ! ^.^.^..\         P                  R7      p \         P                  ! V ^R7      p\	        VP
                  \         P                  4       \        V\         P                  ! . RO. RO. RO.4      4       R# )r(   r   r	   N)r    r    r    r    r    r    r   r    )r    r    r    r    r    r   r   r   )r    r    r    r   r    r   r   r   )r   r   r   r   r   r   r   r   r        r   test_unpackbitsr      si    
1#sRD!2A
aa A"((#q"(($<$<$<$> ? @r   c            	      s   \         P                  ! ^.^.^..\         P                  R7      p \         P                  ! V ^R7      p\	        VP
                  \         P                  4       \         P                  ! V ^RR7      p\         P                  ! V ^RR7      p\        W4       \        V \         P                  ! V^RR7      4       \        VRRRR
13,          V4       \        V \         P                  ! V^RR7      4       \        \        \         P                  V RR	7       \        \        \         P                  V ^
R	7       R# )r(   r   r	   littler4   r5   NNNNr   r6   r   )r   r   r   r   r   r   r   r   r   
ValueErrorr   )r   r   Zb_littleZb_bigr   r   test_pack_unpack_orderr      s    
1#sRD!2A
aa A"((#}}QQ:HMM!!e4Eq q"++hQJKqDbDz8,q"++e!eDE*bmmQ=)R]]A;r   c                  s   \         P                  ! R\         P                  R7      p \         P                  ! V 4      p\	        VP
                  \         P                  4       \        V\         P                  ! R4      4       R# )r    r   Nr   )r   r$   r   r   r   r   r   r   r   r   test_unpackbits_emptyr      sH    
RXX&A
aA"((#q"((4.)r   c            	      s   R.R3. ROR3. ROR3. R
OR	3. ROR3. ROR3. ROR3. ROR3.p V  F  w  r\        V4       F|  w  r4\        P                  ! V\        P                  R7      p\        P                  ! WSR7      p\        VP                  \        P                  4       \        VP                  V4       K~  	  K  	  R# )r    r   r	   Nr   r<   r;   r    ))r(   r;   r    )r<   r)   r    r   r<   r    r;   ))r(   r    r;   r   )r<   r    r)   r    r<   r;   )r   )r    r(   r;   )r    r<   r)   r;   r    r    )r*   r   r   r    r;   r    )r   r+   r   r    r    r;   )r   r   r,   r#   r-   )r.   r   r$   r   r   r   r   r%   )r&   Z	in_shapesr1   r0   r/   r   r   s          r   test_unpackbits_empty_with_axisr      s     	.<	.<	.<	,j9	,j9	,j9	*I6	F !'	%i0LB2Aa)A"((+),	 1 !'r   c            	      s   \         P                  ! R \         P                  R7      p \        \         P                  ! \         P
                  ! V 4      4      V 4       \        \         P                  ! \         P
                  ! V R,          4      4      V R,          4       \         P                  ! V R4      p \        \         P                  ! \         P
                  ! V ^R7      ^R7      V 4       V P                  P                  4       p \        \         P                  ! \         P
                  ! V ^ R7      ^ R7      V 4       R# )i  r   :NNr(   r	   N)r)   r   )	r   Zaranger   r   r   r   Ztiler   r   )Zds    r   test_unpackbits_larger     s    
		#RXX&Ar{{2==#34a8r{{2==3#891S6B
6Ar{{2==#;!DaH	
Ar{{2==#;!DaHr   c                   s  a  ] tR tRt o ]P
                  ! . RO. RO. RO. RO. RO. RO. RO.]P                  R7      t]P                  ! ^9]P                  R7      t	]P                  4       ]	R&   ]P                  ! ^9]P                  R7      t]RRR1,          P                  4       P                  4       ]R&   ]P                  ! R]P                  R7      t]]R&   ]P                  P!                  RR4      ]P                  P!                  R]! ]! ^:4      ]! RRR4      4      4      R	 4       4       t]P                  P!                  R
/ RR/.4      R 4       t]P                  P!                  RR4      ]P                  P!                  R]! ]! ^4      ]! RRR4      4      4      R 4       4       t]P                  P!                  R
/ RR/RR/RRRR/RR/RRRR/.4      R 4       tR tRtV tR# )	TestCounti  r   :Ni1   NNr3   r   r5   countc                s   V^ 8  d   V^,
          pMTp\         P                  ! V P                  VR7      p\         P                  ! WBVR7      p\	        VP
                  \         P                  4       \        WPP                  RV 4       R# )r    r6   )r   r3   N	r   r   r   r   r   r   r   r   padded1)selfr3   r   cutoffpackedunpackeds   &&&   r   test_roundtripZTestCount.test_roundtrip.  sb     19QYFFTVVh7==xHX^^RXX.8\\'6%:;r   kwargsc                s    \         P                  ! V P                  4      p\         P                  ! V3/ VB p\	        VP
                  \         P                  4       \        W0P                  R R 4       R # )Nr   r   )r   r   r   r   s   &&  r   
test_countZTestCount.test_count<  sN     TVV$==262X^^RXX.8\\#2%67r   c                s   V^ 8  d   V^,
          pMTp\         P                  ! V P                  ^ VR7      p\         P                  ! V^ VVR7      p\	        VP
                  \         P                  4       \        WPP                  RV1RV P                  P                  ^,          13,          4       \         P                  ! V P                  ^VR7      p\         P                  ! V^VVR7      p\	        VP
                  \         P                  4       \        WpP                  RV P                  P                  ^ ,          1RV13,          4       R# )r    r4   )r
   r   r3   N)
r   r   r   r   r   r   r   r   padded2r%   )r   r3   r   r   packed0	unpacked0packed1	unpacked1s   &&&     r   test_roundtrip_axisZTestCount.test_roundtrip_axisE  s     19QYFF++dff1x@MM'+35	Y__bhh/9ll7F7<LTVV\\!_<L3L&MN++dff1x@MM'+35	Y__bhh/9ll3CDFFLLO3CWfW3L&MNr   c                s    \         P                  ! V P                  ^ R7      p\         P                  ! V3R^ /VB p\	        VP
                  \         P                  4       VP                  RR4      R8X  d?   \        W0P                  RR1RV P                  P                  ^,          13,          4       MJ\        VRRR1R3,          V P                  RR1RV P                  P                  ^,          13,          4       \         P                  ! V P                  ^R7      p\         P                  ! V3R^/VB p\	        VP
                  \         P                  4       VP                  RR4      R8X  d@   \        WPP                  RV P                  P                  ^ ,          1RR13,          4       R# \        VRRRR13,          V P                  RV P                  P                  ^ ,          1RR13,          4       R# )r    r	   r
   r3   r5   Nr   r   )r   r   r   r   r   r   r   Zgetr   r   r%   )r   r   r   r   r   r   s   &&    r   test_axis_countZTestCount.test_axis_countZ  sx    ++dff1-MM'<<V<	Y__bhh/::j%(E1y,,ss<LTVV\\!_<L7L*MNy2q14<<EUdffllSToEU@U3VW++dff1-MM'<<V<	Y__bhh/::j%(E1y,,7GQ7G"7L*MNyDbD14<<@Pa@PRUSURU@U3VWr   c                s   \         P                  ! V P                  ^ R7      p\        \        \         P
                  V^ RR7       \         P                  ! V P                  ^R7      p\        \        \         P
                  V^RR7       \         P                  ! V P                  4      p\        \        \         P
                  VRR7       R# )r    r	   )r
   r   )r   N)r   r   r   r   r   r   )r   r   r   r   s   &   r   test_bad_countZTestCount.test_bad_countr  sv    ++dff1-j"--qK++dff1-j"--qKTVV$j"--sCr    )r   r    r   r    r    r   r    )r    r   r   r   r    r    r    )r    r    r   r    r    r   r   )r   r   r    r    r    r   r   )r   r    r   r    r   r    r   )r    r    r   r   r   r    r    )r    r   r    r   r    r   r    r   )	   r   )Nr   Nr   r   r5   r   r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r   r   r   Zzerosr   ZravelZpadded1br   r   pytestmarkparametrizer   r   r   r   r   r   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r     s    
 XX	A hhr*G779GCLxx"((+HddGLLN((*HSMhhvRXX.GGFO[[Z):;[[WeE"IuRb7I&JK
< L <
< [[X$( 88 [[Z):;[[WeE!HeBB6G&HIO J <O$ [[X$*7D9'6( XX"D Dr   r   r   )Z	itertoolsr   r   Znumpyr   Znumpy.testingr   r   r   r   r'   r2   r   r   r   r   r   r   r   r   r   r   r   r   r   <module>r      s}       I I
D
(1( %67\D 8\D~#@<*-(I[D [Dr   