+
    i                        R t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	 ^ RI
Ht ^ RIHt ^ RIHtHt ^ RIHtHt ^ RIHt ^ R	IHt ^ R
IHtHt ^ RIt^ RIHt ^ RIHt RR lt ]PB                  PE                  RRRRRRR]PF                  ! RRR]].R7      RR]PF                  ! RRR]R7      .
4      R 4       t$]PB                  PE                  RRR .4      R 4       t%R# )!z
Test output reproducibility.
N)pyplot)get_sample_data)PathCollection)	BboxImage)AnchoredOffsetboxAuxTransformBox)Circle	PathPatch)Path)subprocess_run_for_testing)needs_ghostscriptneeds_usetex)TextPath)IdentityTransformmhipc           
      
   \         P                  ! V4       \         P                  P                  R RRV/4       \        P
                  ! 4       pRV 9   d   VP                  ^^^4      p\        ^
4      pVP                  V^.^
,          RR7       VP                  V^.^
,          RR7       VP                  V^.^
,          RR7       VP                  V^.^
,          RR7       VP                  V^.^
,          R	R7       R
V 9   d   VP                  ^^^4      pVP                  \        ^^4      \        ^^4      4      VP                  \        ^^4      ^.^,          \        ^^4      R7      ,           pVP                  . R,O4       R-p\        Wx4       F  w  rV	P                  V
4       K  	  RV 9   d   . R.O. R/O. R0O.pVP                  ^^^4      P                  VRR7       . R1O. R.O. R0O.pVP                  ^^^4      P                  VRR7       . R/O. R.O. R2O.pVP                  ^^^4      P                  VRR7       RV 9   Ed    ! R R\        4      pVP                  RR7      pVP                  ^..4      pVP                  \!        R3RR7      4       VP#                  ^4      w  rF\        P$                  ! \'        R4      4      p\)        R4R^R7      pV! VVRR7      p\+        \-        4       4      pVP/                  V4       \1        RVRR R!7      pVP/                  V4       \2        P4                  ! 4       P7                  4       pV;P8                  ^,          un        V;P8                  ^,          un        \2        P:                  ! 4       P7                  4       pVP8                  R"R"R51,          Vn        \2        P<                  ! VV4      p\2        P>                  ! ^4      P7                  4       pV;P8                  R#,          un        VP#                  ^^RRR$7      w  ppVV3 F  pVw  rF\A        V.^R%R&R'RR(7      pVP                  VVPB                  4       VPE                  V4       \        V^R%R&R'RR(7      pVP                  VVPB                  4       VPG                  V4       VPI                  R6^.4       VPK                  R6^.4       K  	  \        ^4      pVP                  ^^^4      pVP                  WU4       VPM                  R)4       VPO                  R)4       VPQ                  R)4       \S        \T        PV                  R*\T        PV                  4      pVPY                  VVR+7       R"# )7zsvg.hashsaltasdfztext.usetexmD)markerx^Hvh)bottom*inearest)interpolationbilinearbicubicpc                   R   a a ] tR t^@t oRtV 3R ltV 3R ltRV 3R lltRtVt	V ;t
# )+_save_figure.<locals>.PathClippedImagePatchz
The given image is used to draw the face of the patch. Internally,
it uses BboxImage whose clippath set to the path of the patch.

FIXME : The result is currently dpi dependent.
c                   < \         SV `  ! V3/ VB  \        V P                  R R R7      V n        V P                  P                  V4       R # )N)normorigin)super__init__r   get_window_extent
bbox_imageset_data)selfpathr+   kwargs	__class__s   &&&,ځ/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/matplotlib/tests/test_determinism.pyr)   4_save_figure.<locals>.PathClippedImagePatch.__init__H   sA     00"+**d#D((4    c                &   < \         SV `  R4       R# )zSimply ignore facecolor.noneN)r(   set_facecolor)r-   colorr0   s   &&r1   r6   9_save_figure.<locals>.PathClippedImagePatch.set_facecolorN   s    %f-r3   c                   < V P                   P                  V P                  V P                  4       4       V P                   P	                  V4       \
        SV `  V4       R # N)r+   set_clip_path_pathget_transformdrawr(   )r-   rendererr0   s   &&r1   r>   0_save_figure.<locals>.PathClippedImagePatch.drawR   sB    --djj$:L:L:NO$$X.X&r3   )r+   r:   )__name__
__module____qualname____firstlineno____doc__r)   r6   r>   __static_attributes____classdictcell____classcell__)r0   __classdict__s   @@r1   PathClippedImagePatchr$   @   s     5.' 'r3   rJ   polar)
projectiongioT?)radiuszgrace_hopper.jpgz!?)sizek)ecz
upper leftTg?)locchildframeon	borderpadNg@)sharexshareyblueredgffffff?)lw	edgecolor	facecoloralphahatchzA string $1+2+\sigma$buffer)format)g      ?g      @g      @g      @)-+r   \r   oO.)         )rg   rh   rf   )rh   rf   rg   )rf   rh   rg   )rg   rf   rh   )    rf   )ri   ri   )-mplusercParamsupdatepltfigureadd_subplotrangeplotbar
set_xtickszip	set_hatchimshowr	   r;   r   subplotsimreadr   r   r   r   
add_artistr   r
   unit_rectangledeepcopyverticesunit_circlemake_compound_pathunit_regular_starr   	transDataadd_collection	add_patchset_xlimset_ylim	set_title
set_xlabel
set_ylabelgetattrsysstdoutsavefig)objectsfmtusetexfigax1r   ax2barspatternsru   patternArJ   pxpimgarr	text_pathr"   	offsetboxaoexteriorinterior	clip_pathstarrow1row2row
collectionpatchaxr   s   &&&                            r1   _save_figurer      s   GGCLLLGH
**,C
g~ooaA&"IQC"HS)QC"HS)QC"HS)QC"HS)QC"HS)
g~ooaA&aU1a[1aaS1WU1a[AB+,</LCMM'" 0 g~	9-1a '''C	9-1a '''D	9-1a '''C
g~	'I 	'2 ___0yy1#6&89 \\!_
jj);<=VT4	!)SS9#$5$78	Q<y$),.r &&(113QQ##%..0$--dd3++Hh?	%%a(113||Aqd|Ct$<CHC'127s#OJ$$Y>z*dqFe$'s4E	3==9MM% LL"a!LL"a!   	aA	Aq	!BGGAMLL)*MM*+MM*+SZZ3::6FKKsK#r3   zobjects, fmt, usetexpsT)markssvgc                   \        ^4       Uu. uFQ  p\        \        P                  RRRV : RV: RV R2./ \        P
                  CRRRR	/CR
RRR7      P                  NKS  	  ppVR,           FH  pVR8X  d0   V'       d(   WT^ ,          8w  d   \        P                  ! R4       K7  K9  WT^ ,          8X  d   KH  Q h	  R# u upi )a*  
Output three times the same graphs and checks that the outputs are exactly
the same.

Parameters
----------
objects : str
    Objects to be included in the test document: 'm' for markers, 'h' for
    hatch patterns, 'i' for images, and 'p' for paths.
fmt : {"pdf", "ps", "svg"}
    Output format.
-R-czHfrom matplotlib.tests.test_determinism import _save_figure;_save_figure(z, )SOURCE_DATE_EPOCH	946684800
MPLBACKENDAggFT)envtextcapture_outputcheck:rf   NNr   z+failed, maybe due to ghostscript timestampsN)	rs   r   r   
executableosenvironr   pytestskip)r   r   r   _plotsr"   s   &&&   r1   test_determinism_checkr      s    H q	 A 	#^^T4$Kr#6(!=>&2:: &2Ku&t4	9 :@	@  
 	 2YY$;6!H}IJ  a= = 	s   AB>zfmt, stringc                    \        \        P                  RRRV : R2./ \        P                  CRRRR/CR	R
R	R7      P
                  pW9   g   Q hR# )ak  
Test SOURCE_DATE_EPOCH support. Output a document with the environment
variable SOURCE_DATE_EPOCH set to 2000-01-01 00:00 UTC and check that the
document contains the timestamp that corresponds to this date (given as an
argument).

Parameters
----------
fmt : {"pdf", "ps", "svg"}
    Output format.
string : bytes
    Timestamp string for 2000-01-01 00:00 UTC.
r   r   zMfrom matplotlib.tests.test_determinism import _save_figure; _save_figure('', r   r   r   r   r   TF)r   r   r   r   N)r   r   r   r   r   r   )r   stringbufs   && r1   "test_determinism_source_date_epochr      so    0 %	t G1
&	'"rzz ".5"26U$P
 QWPV  ==r3   )r   pdfF) r   F)r   r   F)r   r   F)r   r   F)r   r   F)r"   r   F)r   r   F)r   s!   /CreationDate (D:20000101000000Z))r   s(   %%CreationDate: Sat Jan 01 00:00:00 2000)&rE   r   r   r   
matplotlibrl   r   rp   matplotlib.cbookr   matplotlib.collectionsr   matplotlib.imager   matplotlib.offsetboxr   r   matplotlib.patchesr   r	   matplotlib.pathr
   matplotlib.testingr   matplotlib.testing._markersr   r   matplotlib.testing.comparematplotlib.textr   matplotlib.transformsr   r   markparametrizeparamr   r    r3   r1   <module>r      s    
 
   $ , 1 & C 0   9 G ! $ 3r$j D$|5F&G	IVUD=!!> 5
 	<		r3   