+
    ,iY                        ^ RI t ^ RIHt ^ RIHt ^ RI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 ^ R	IHt ^ R
IHtHt R t ]! R.RR7      R 4       t!]! R.RR7      R 4       t"R t#]! R.4      R 4       t$]! R.4      R 4       t%]! ^R7      R 4       t&]! R.R7      R 4       t']! ^RR.R7      R 4       t(R t)]PT                  PW                  R 4      ]R! 4       4       t,R" t-R# t.R$ t/R% t0R& t1R' t2R( t3R) t4R* t5R+ t6]! R,.R-R7      R. 4       t7]! R/.4      R0 4       t8]Pr                  Pu                  R1R2^/];R33R2^./];R43R5^/];R63R5^./];R73R8^/];R93R8^./];R:3R;^/];R<3R=^/];R>3R?R@/]<RA3.	4      RB 4       t=RC t>]Pr                  Pu                  RD. RJO4      ]Pr                  Pu                  RERRF.4      RG 4       4       t?RH t@RI tAR# )K    N)BytesIO)Path)Figure)Circle)Text)check_figures_equalimage_comparison)needs_usetex)font_manager)OffsetImageAnnotationBboxc                  \   \         P                  ! 4       w  r\        P                  ! ^ ^\        P                  ,          ^24      p\        P
                  ! V4      p\        P                  ! V4      pVP                  W#VRR7      w  rVpV F  pVP                  R4       K  	  \        4       ;_uu_ 4       p	V P                  V	RR7       V	P                  4       p
RRR4       \        P                  P                  P                  4       pVP!                  X
4       R#   + '       g   i     LK; i)r   ko)yerrfmtFsvgformatN)pltsubplotsnplinspacepisin	ones_likeerrorbarset_visibler   savefiggetvaluexmlparsersexpatParserCreateParse)figaxxyr   abcartistfdbufparsers               C/usr/lib/python3/dist-packages/matplotlib/tests/test_backend_svg.pytest_visibilityr1      s    llnGC
Aq255y"%A
q	A<<?Dkk!Ttk4GA!5!  
bBu%kkm 
 [[++-F
LL 
s   4$DD+	zfill_black_with_alpha.svgT)remove_textc                  h    \         P                  ! 4       w  rVP                  . RO. RORRRR7       R# )r   皙?ki'  )r'   r(   r+   alphasN)r   r4      )r   r   r   )r   r   scatterr%   r&   s     r0   test_fill_black_with_alphar;   )   s%    llnGCJJ	SuJE    noscalec                      \         P                  ! \         P                  ! R^^4      \         P                  ! R^^4      4      w  r\         P                  ! V^,          4      p\        P
                  ! 4       w  r4VP                  VRRR7       R# )   graynone)cmapinterpolationN)r   meshgridaranger   r   r   imshow)XYZr%   r&   s        r0   test_noscalerK   /   s^    ;;ryyQ*BIIb!Q,?@DA
qAvAllnGCIIafFI3r<   c                  6   \         P                  ! 4       p R pV P                  RVR7       \        4       ;_uu_ 4       pV P	                  VRR7       VP                  4       P                  4       pRRR4       RV R2pVX9   g   Q hR#   + '       g   i     L!; i)z$http://test_text_urls.matplotlib.orgtest_text_urls)urlr   r   Nz<a xlink:href="z">)r   figuresuptitler   r   r   decode)r%   test_urlr-   r.   expecteds        r0   rM   rM   8   sy    
**,C5HLL!xL0	bBu%kkm""$ 
 !
"-Hs?? 
s   2BB	zbold_font_output.svgc                     \         P                  ! 4       w  rVP                  \        P                  ! ^
4      \        P                  ! ^
4      4       VP                  R4       VP                  RRR7       VP                  RRR7       R# )
   nonbold-xlabelbold-ylabelbold
fontweight
bold-titleN)r   r   plotr   rF   
set_xlabel
set_ylabel	set_titler:   s     r0   test_bold_font_outputr`   F   sZ    llnGCGGBIIbM299R=)MM"#MM-FM3LL&L1r<   z'bold_font_output_with_none_fonttype.svgc                  <   R \         P                  R&   \         P                  ! 4       w  rVP                  \        P
                  ! ^
4      \        P
                  ! ^
4      4       VP                  R4       VP                  RRR7       VP                  RRR7       R# )rA   svg.fonttyperV   rW   rX   rY   r[   N)	r   rcParamsr   r\   r   rF   r]   r^   r_   r:   s     r0   (test_bold_font_output_with_none_fonttyperd   O   sh    #)CLL llnGCGGBIIbM299R=)MM"#MM-FM3LL&L1r<   )tolc           	         \         P                  ! ^ ^d4      R,          p\         P                  ! V4      p\         P                  ! V4      pVP	                  4       pVP                  W4RR^
R7       VP                  V^,           VRR^
R7       V P	                  4       pVP                  W4RR^
RR7       VP                  V^,           VRR^
RR7       R# )	r   ffffff@-r)r+   lwr*   Tr+   rj   
rasterizedN)r   rF   cosr   r   r\   fig_testfig_reftr'   r(   ax_refax_tests   &&     r0   test_rasterizedrt   Y   s    
		!SS!A
q	A
q	AF
KKcSRK(
KK!QsrK*!GLLscbTL:LL1atL<r<   r   )
extensionsc           
      2   \         P                  ! ^ ^d4      R,          p\         P                  ! V4      p\         P                  ! V4      pVP	                  4       pVP                  ^ ^4       VP                  RR4       VP                  W4RR^
RR7       VP                  V^,           VRR^
RR7       VP                  V^,           VRR	^
RR7       VP                  V^,           VRR
^
RR7       V P	                  4       pVP                  ^ ^4       VP                  RR4       VP                  W4RR^
RRR7       VP                  V^,           VRR	^
RRR7       VP                  V^,           VRR
^
RRR7       VP                  V^,           VRR^
RRR7       R# )r   rg   g?rh   ri   Trk   r*   Fgm)r+   rj   rl   zorderg?gffffff?g333333?Ng)r   rF   rm   r   r   set_xlimset_ylimr\   rn   s   &&     r0   test_rasterized_orderingr|   h   se   
		!SS!A
q	A
q	AF
OOAq
OOD#
KKcSRDK9
KK!QsreK<
KK!QsrdK;
KK!QsrdK;!GQT3LLscbT#LFLL1atCLHLL1atCLHLL1auSLIr<   pdf)re   ru   c           	      ,   R R .pVP                  4       pVP                  V^ ,          .V^,          .RR^R7       \        P                  P	                  R4      p\        P                  P                  WBRR7      pVP                  V4       V P                  4       pVP                  V^ ,          .V^,          .RR^RR7       \        P                  P	                  R4      p\        P                  P                  WBRR7      pVP                  V4       R	# )
g?r'   black)markerr+   ry   rH   g @)ry   T)r   r+   ry   rl   N)r   r\   mpl	offsetboxTextArear   
add_artist)ro   rp   locrr   r*   aboxrs   s   &&     r0   test_prevent_rasterizationr      s    ,CF
KKQ3q6(3'!KDs#A==''s';D
d!GLL#a&CF8C71   " 	s#A==''s';Dtr<   c                     R  p \         P                  ! 4       pVP                  ^^^4      pVP                  4        \	        ^4       F  pVP                  ^ ^.^ V.RRR7       K  	  V ! VR4      ^ 8X  g   Q hV ! VR4      ^8X  g   Q h\         P                  ! 4       pVP                  ^^^4      pVP                  4        \	        ^4       F  pVP                  ^ ^.^ V.RRR7       K  	  V ! VR4      ^8X  g   Q hV ! VR4      ^8X  g   Q h\         P                  ! 4       pVP                  ^^^4      pVP                  4        \	        ^4       F5  pVP                  ^ ^.V^ .RRR7       VP                  ^ ^.^ V.RRR7       K7  	  V ! VR4      ^8X  g   Q hV ! VR4      ^8X  g   Q h\         P                  ! 4       pVP                  ^^^4      p	V	P                  4        V	P                  R4       \	        ^4       F5  pV	P                  ^ ^.V^ .RRR7       V	P                  ^ ^.^ V.RRR7       K7  	  V ! VR4      ^8X  g   Q hV ! VR4      ^8X  g   Q h\         P                  ! 4       p
RV
n        V
P                  ^^^4      pVP                  4        \	        ^4       F  pVP                  ^ ^.^ V.RRR7       K  	  V ! V
R4      ^8X  g   Q hV ! V
R4      ^8X  g   Q hR# )c                     \        4       ;_uu_ 4       pV P                  VR R7       VP                  4       P                  4       pRRR4       XP	                  RV 24      #   + '       g   i     L$; i)r   r   N<)r   r   r   rQ   count)r%   tagr-   r.   s   &&  r0   	count_tag%test_count_bitmaps.<locals>.count_tag   sS    YY"KK5K)++-&&(C  yy1SE## Ys   2A!!A1	zb-F)rl   imagepathTN)r   rO   add_subplotset_axis_offranger\   set_rasterizedsuppressComposite)r   fig1ax1nfig2ax2fig3ax3fig4ax4fig5ax5s               r0   test_count_bitmapsr      s   $ ::<D


1a
#C1X!R1a&$59 T7#q(((T6"a''' ::<D


1a
#C1X!R1a&$48 T7#q(((T6"a''' ::<D


1a
#C1X!R1a&$59!R1a&$48  T7#q(((T6"a''' ::<D


1a
#Ct1X!R1a&$59!R1a&$48  T7#q(((T6"a''' ::<D!D


1a
#C1X!R1a&$48 T7#q(((T6"a'''r<   defaultc            	         \        4       p V P                  R R RRR7       \        4       ;_uu_ 4       pV P                  VRR7       VP	                  4       pRRR4       \
        P                  P                  P                  X4      pRpRp\        VP                  R	V R
V R24      4      ^8X  g   Q hRV 2VP                  R	V R24      P                  P                  4       9   g   Q hR#   + '       g   i     L; i)      ?z\textwonT)usetexr   r   Nhttp://www.w3.org/2000/svgzSFSS3583-8e.//{z}path[@d][@id=""]#z}use)r   textr   r   r   r    etreeElementTree
fromstringlenfindallfindattribvalues)r%   r-   r.   treenswon_ids         r0   test_unicode_wonr      s     (CHHR[H.	bBu%kkm 
 99  ++C0D	%BFt||eB4'7xrBCDIIIvh<499uRD%67>>EEGGGG 
s   $C,,C<	c                  d   \         P                  P                  R RRR/4       Rp \         P                  ! 4       w  rVP	                  \
        P                  ! R4      ^V 4       VP                  \
        P                  ! R4      \
        P                  ! R4      4       VP                  ^ ^4       \        4       ;_uu_ 4       pVP                  VRR	7       VP                  ^ 4       VP                  4       P                  4       pR
R
R
4       V X9   d   RV9   g   Q hR
#   + '       g   i     L"; i)rb   rA   zfont.stretch	condensedzUnlikely to appear by chancez
2019-06-30z
2019-01-01z
2019-12-31r   r   N)r   rc   updater   r   r   
datetime64rz   r{   r   r   seekreadrQ   )rS   r%   r&   r-   r.   s        r0   "test_svgnone_with_data_coordinatesr      s    LLMN-HllnGCGGBMM,'H5KKl+R]]<-HIKK1	bBu%

ggi  

 s?{c1111 
s   ADD/	c                 R  aa ^ RI Ho ^ RIHo \        P
                  ! 4       p V P                  ^4      pVP                  RR.RR..RR7       VP                  . RO. RORR	7       VP                  . ROR
R	7       VP                  4        VP                  4       pVP                  . RO. RO4       V P                  ^RR7      pVP                  . RO. RO4       V P                  ^RR7      pVP                  ^^.^^.^^.4       V P                  P                  4        / p\        V P!                  RR7      4       FN  w  rgVP#                  4       '       g   K  RVP$                  P&                   RV 2pWuV&   VP)                  V4       KP  	  \+        4       ;_uu_ 4       p	V P-                  V	RR7       V	P/                  4       P1                  4       p
RRR4       VV3R lpVP3                  4        F  w  rV! W4      '       g   K  VX
9   d   K  Q h	  R#   + '       g   i     LK; i)z+Test that object gid appears in output svg.)	OffsetBox)Tickg      ?g       @g      @auto)aspect	myscatter)labelmyplotpolar)
projection3dT)include_selftest123_r   r   Nc                 V  < \        VS4      '       d   R # \        V\        4      '       d(   VP                  4       R8X  d   R # VP                  f   R # \        V\        P
                  4      '       dZ   VP                  4       w  r#\        V4      \        V4      u;8X  d
   ^8X  d    R #  \        VR4      '       d   VP                  f   R # \        VS4      '       dL   VP                  4       pV^ 8X  d   R # VP                  4       pV\        V4      8  g   V\        V4      8  d   R # R# )F axesT)
isinstancer   get_textr   r   Line2Dget_datar   hasattrget_locget_view_intervalminmax)gidobjxdataydatar   vir   r   s   &&    r0   includetest_gid.<locals>.include  s    c9%%c4  ||~#!c3::&&<<>LE5zSZ,1, -S&))SXX-=c4  ++-Cax&&(BSW}c"gr<   r8         )r   r   r8   )r   g      ?r   )matplotlib.offsetboxr   matplotlib.axisr   r   rO   r   rG   r9   r\   legendtwinxbarcanvasdraw	enumeratefindobjget_visible	__class____name__set_gidr   r   r   rQ   items)r%   r   ax1ar   r   gdicidxr   r   r-   r.   r   r   r   s               @@r0   test_gidr      s   .$
**,C
//#
CJJR2r(#FJ3KK	9KK8HHYhH'JJL99;DHHY	"
//#'/
2CHH[)$
//#$/
/CHHaVaVaV$JJOODckktk<=??CMM2231SE:CIKK	 > 
bBu%kkm""$ 
0 JJL3#:: !9 
s   !2HH&	c                      \        4       \        R	^
R7      r\        ^4       F7  pV P                  4       pVP	                  V..4      pVP                  V4       K9  	  \        R	^R7      pV P                  4       pVP	                  ^ ..4      pVP                  V4       \        4       ;_uu_ 4       pV P                  VRR7       VP                  4       pRRR4       \        P                  P                  P                  X4      pRp	\        4       p
VP                  RV	 R24       F/  pVP                  R,          pW9  g   Q hV
P!                  V4       K1  	  \#        V
4      ^8X  g   Q hR#   + '       g   i     L; i)
r   )radiusr   r   Nr   r   z}clipPath[@id]id)r   r   )r   r   r   r   rG   set_clip_pathr   r   r   r    r   r   r   setr   r   addr   )r%   circleir&   aimginner_circler-   r.   r   r   clip_path_idsnodenode_ids                r0   test_clip_path_ids_reuser  /  s8   (F6"51X__yy1#6" 
 &+L		B99qcUD|$	bBu%kkm 
 99  ++C0D	%BEMuRD89++d#+++'" : }""" 
s   0$E--E=	c                  H    \         P                  ! \        4       R RR7       R# )svgztight)r   bbox_inchesN)r   r   r    r<   r0   test_savefig_tightr  J  s     KK	&g>r<   c                     \         P                  ! 4       w  rVP                  . R
O. RO4      pVP                  . RO4       \         P                  ! . RO. RO4      w  pVP                  R4       \         P                  ! . RO. RORRR7      w  pVP                  R4       \        4       pV P                  VRR7       VP                  4       pR F  pR	V,           V9   d   K  Q h	  R# )r8   Nzhttps://example.com/bazrA   r'   )	linestyler   zhttps://example.com/quuxr   r   s   https://example.com/r      r?      )zhttps://example.com/foozhttps://example.com/barN)r   r   r  )r   r  r?   )s   foos   bars   bazs   quux)	r   r   r9   set_urlsr\   set_urlr   r   r   )r%   r&   r7   pr*   vs         r0   rR   rR   P  s     llnGC 	

9i(AJJKL 
)Y	'BAII'( 
)Y&	EBAII()	AKK%K 	

A.&*a/// /r<   c                    V P                  R R4       \        P                  ! 4       w  rVP                  . RO. RO4       \	        VP
                  P                  4       4       F  w  r4VP                  RV 24       K  	  \        P                  ! 4       w  rRVP                  . RO. RO4       \	        VP
                  P                  4       4       FA  w  r4VP                  P                  RV 24       VP                  P                  RV 24       KC  	  \        4       pVP                  VRR7       VP                  4       p\        4       pVP                  VRR7       VP                  4       p\        \        VP
                  P                  4       4      4       F  pRV 2P                  R4      V9   d   K  Q h	  Wg8X  g   Q hR# )	SOURCE_DATE_EPOCH19680801zhttps://example.com/r   r   asciiNr   r
  )setenvr   r   r9   r   yaxisget_major_ticksr  label1label2r   r   r   r   r   encode)monkeypatchr   r&   r   tickr   b1b2s   &       r0   test_url_tickr  h  s_   *J7||~HDJJy)$RXX5578+A3/0 9 ||~HDJJy)$RXX557821#6721#67 9 
BLLEL"	B	BLLEL"	B3rxx//123%aS)009R??? 48O8r<   c                    V P                  R R4       \        P                  ! 4       w  r\        4       ;_uu_ 4       pVP	                  VRR7       VP                  4       P                  4       pRRR4       \        P                  X9   g   Q hRV9   g   Q hRV9   g   Q hRV9   g   Q h\        4       ;_uu_ 4       pVP	                  VRRRR	RR
RRR/R7       VP                  4       P                  4       pRRR4       \        P                  V9  g   Q hRV9  g   Q hRV9  g   Q hRV9  g   Q hR#   + '       g   i     L; i  + '       g   i     LW; i)r  r  r   r   N
1970-08-16image/svg+xml
StillImageDateCreatorFormatTyper   metadata)	r  r   r   r   r   r   rQ   r   __version__)r  r%   r&   r-   r.   s   &    r0   test_svg_default_metadatar+    s,   *J7llnGC	bBu%kkm""$ 

 ??c!!!3c!!!3 
bBui08$0N 	Okkm""$ 
 ??#%%%s"""#%%%s"""5 
 
s   2D1:;E1E	E	c           
         V P                  R R4       R\        P                  RRRRRR/pR	pR
pRpRp\        P                  ! 4       w  rgV EF  p\        4       ;_uu_ 4       p	VP                  V	RVP                  4       R/R7       V	P                  4       P                  4       p
RRR4       \        P                  P                  P                  X
4      pVP                  RV RV RV R24      w  pV Fi  pVP                  RV V 24      pW8X  d   V'       d   Q hK+  Vw  p\        P                  P                  P                  VRR7      pW,          V9   d   Ki  Q h	  EK  	  R#   + '       g   i     L; i)r  r  creatordater!  r   r"  typer#  {http://www.w3.org/2000/svg}-{http://www.w3.org/1999/02/22-rdf-syntax-ns#} {http://creativecommons.org/ns#}"{http://purl.org/dc/elements/1.1/}r   Nr(  ./	metadata/zRDF/Workunicode)encoding)r  r   r*  r   r   r   r   titler   rQ   r    r   r   r   r   tostring)r  metadata_containsSVGNSRDFNSCCNSDCNSr%   r&   namer-   r.   rootworkkeydataxmlstrs   &               r0   test_svg_clear_default_metadatarF    sP    *J7"COOV\!?FLJ +E;E-D/DllnGC!YY"KK5DJJL$3GKH++-&&(C  yy$$//4r%	%TF$GH$C<<"TF3% 01D{xEDYY**33D93MF$)V333 % "Ys   "AE))E9c                     \         P                  ! 4       w  r\        4       ;_uu_ 4       pV P                  VR RRRRRRRR/R7       VP	                  4       P                  4       pRRR4       Rp\        P                  P                  P                  X4      pVP                  RV R	24      '       d   Q hR#   + '       g   i     LZ; i)
r   r$  Nr%  r&  r'  r(  r0  r4  r)  )r   r   r   r   r   rQ   r    r   r   r   r   )r%   r&   r-   r.   r<  rA  s         r0   test_svg_clear_all_metadatarH    s     llnGC	bBui08$0N 	Okkm""$ 

 +E99  ++C0D||bx011111 
s   ;B77C	c                  ^   . R Op . R!OpR\         P                  ! R^^4      \         P                   ! R^^^^^4      .RR/V  Uu/ uF  q"V R2bK
  	  upCV Uu/ uF  q"V R	2V R
2.bK  	  upCp\        P                  ! 4       p\	        4       ;_uu_ 4       pVP                  VRVR7       VP                  4       P                  4       pRRR4       RpRpRp	Rp
\        P                  P                  P                  X4      pVP                  RV RV R24      w  pVP                  RV R24       Uu. uF  qP                  NK  	  ppWR,          .8X  g   Q hVP                  RV	 RV
 R24       Uu. uF  pVP                  V R2,          NK  	  ppWR,          .8X  g   Q hR.V O F\  pVR8X  d   K  VP                  RV	 RV
 VP                  4        24       Uu. uF  pVP                  NK  	  ppVW2,          .8X  d   K\  Q h	  V Fb  pVR8X  d   K  VP                  RV	 RV
 VP                  4        RV	 RV
 R2
4       Uu. uF  pVP                  NK  	  ppVW2,          8X  d   Kb  Q h	  VP                  RV	 RV
 R24       Uu. uF  qP                  NK  	  ppVR.8X  g   Q hVP                  RV	 RV
 RV RV R2	4       Uu. uF  qP                  NK  	  ppVVR,          8X  g   Q hR# u upi u upi   + '       g   i     EL=; iu upi u upi u upi u upi u upi u upi )"CoverageTitler'  Keywordsr$  i  Descriptionzdescription
textz fooz barz bazr   r(  Nr0  r1  r2  r3  r4  r5  RDFr9  zWork/r/  resource/zAgent/r.  z1968-08-01/1968-08-02T01:02:03zsubject/zBag/li)rJ  
IdentifierLanguageRelationSourcerK  r'  )Contributorr%  rL  	PublisherRights)datetimer.  r   rO   r   r   r   rQ   r    r   r   r   r   r   r   lower)single_valuemulti_valuer5   r)  r%   r-   r.   r<  r=  r>  r?  rA  rdfr   titlestypesr   datess                     r0   test_svg_metadatara    s   %LOKtQ*""4Aq!Q79* #/
/,Q4j=,
/	
 1<
<1!DzaS:&&
<H **,C	bBux8kkm""$ 
 +E;E-D/D99  ++C0D<<"UG9UG378DC %)LL2eWE1B$CD$CDii$CFDw'((((r$uTF$%?@B@ [[E7(+,,@ 
 Bf%&&&&+l+;!kkBtfE$	{*KLNLd ))L 	 N(+&&& , 
? TF%vaggi[$vdV5IKLK IIK 	 L $$$  $';;D6tfD/I#JK#J4YY#JEK56666 kkBtfE$xwd5'LMOM !iiM  OXj))))] 0
< 
 EBNL LOs<   K3K83K=3L3LLL L%L*=L	zmulti_font_aspath.svgg?c                  t   \         P                  ! R .R7      p \        \         P                  ! V 4      4      P                  R8w  d   \
        P                  ! R4       \        P                  ! RRR .^R7       \        P                  ! RRR	7       \        P                  ! 4       pVP                  R
RR4       R# )WenQuanYi Zen Heifamilywqy-zenhei.ttcFont may be missingfontDejaVu Sansre  sizer   r   fonttype333333?ffffff?"   There are 几个汉字 in between!N)fmFontPropertiesr   findfontr@  pytestskipr   rcrO   r   fpr%   s     r0   test_multi_font_type3ry    s    			#6"7	8BBKKO!!%55)*FF6=*=>RHFF56"
**,CHHT5>?r<   zmulti_font_astext.svgc                  t   \         P                  ! R .R7      p \        \         P                  ! V 4      4      P                  R8w  d   \
        P                  ! R4       \        P                  ! 4       p\        P                  ! RRR7       \        P                  ! RRR .^R	7       VP                  R
RR4       R# )rc  rd  rf  rg  r   rA   rl  rh  ri  rj  rn  ro  rp  N)rq  rr  r   rs  r@  rt  ru  r   rO   rv  r   rw  s     r0   test_multi_font_type42r{    s    			#6"7	8BBKKO!!%55)*
**,CFF56"FF6=*=>RHHHT5>?r<   zmetadata,error,messager$  z,Invalid type for Date metadata. Expected strz1Invalid type for Date metadata. Expected iterablerL  z0Invalid type for Keywords metadata. Expected strz5Invalid type for Keywords metadata. Expected iterabler%  z/Invalid type for Creator metadata. Expected strz4Invalid type for Creator metadata. Expected iterablerK  z-Invalid type for Title metadata. Expected strr&  z.Invalid type for Format metadata. Expected strFooBarzUnknown metadata keyc           
      ,   \         P                  ! WR 7      ;_uu_ 4        \        4       ;_uu_ 4       p\        P                  ! 4       pVP                  VRV R7       RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i))matchr   r(  N)rt  raisesr   r   rO   r   )r)  errormessager-   r%   s   &&&  r0   test_svg_incorrect_metadatar  )  sR    & 
u	,	,gii2jjlBux8 /8	,	,ii	,	,	,s"   B*A/	B/A?:BB	c                  .   \         P                  ! 4       p V P                  R R RRR7       \        4       ;_uu_ 4       pV P	                  VRR7       VP                  4       P                  4       pRV9   g   Q h RRR4       R#   + '       g   i     R# ; i)r   z<'"&>)r   r   r   z&lt;&apos;&quot;&amp;&gt;"N)r   rO   r   r   r   r   rQ   )r%   r-   r.   s      r0   test_svg_escaper  A  sh    
**,CHHS#yiH0	bBu%kkm""$+s222 
s   ;BB	font_strinclude_genericFc           	         \         P                  ! R .R7      p\        \         P                  ! V4      4      P                  R8w  d   \
        P                  ! R4       \        R V P                  R4      4      Evr4p\        V4      pV'       d
   WE.,           pV\        P                  RV 2&   V\        P                  R&   R\        P                  R	&   \        P                  ! 4       w  rxVR
8X  d   . ROp	MV.p	V	 F5  p
VP                  RRRW:.RR7       VP                  RRRV.VOV
NRR7       K7  	  VP                  R4       \        4       ;_uu_ 4       pVP!                  VRR7       VP#                  4       pRRR4       \$        P&                  P(                  P+                  X4      pRp^ pVP-                  RV R24       Fn  pV^,          p\/        R \/        VP1                  4       4      R,          P                  R4       4       4      pVR,          V R28X  g   Q hVR,          V 8X  d   Kn  Q h	  V\        VP2                  4      8X  g   Q hR#   + '       g   i     L; i)rc  rd  rf  rg  c                 $    V P                  R 4      # )'stripr'   s   &r0   <lambda>&test_svg_font_string.<locals>.<lambda>]  s    !''#,r<   z, zfont.z	font.sizerA   rb   
sans-serifr   rp  center)re  har4   offr   r   Nr   r   z}textc              3   v   "   T F/  p\        R  VP                  4       P                  R4      4      x  K1  	  R# 5i)c                 "    V P                  4       # )Nr  r  s   &r0   r  0test_svg_font_string.<locals>.<genexpr>.<lambda>  s
    !'')r<   :N)mapr  split).0r   s   & r0   	<genexpr>'test_svg_font_string.<locals>.<genexpr>~  s1      
C #QWWY__S%9::Cs   79style;z	font-sizepxzfont-family)sansr  z
sans serif)rq  rr  r   rs  r@  rt  ru  r  r  r   r   rc   r   r   axisr   r   r   r    r   r   r   r   dictr   texts)r  r  rx  explicitrestgenericrk  r%   r&   generic_optionsgeneric_namer-   r.   r   r   
text_counttext_element
font_styles   &&                r0   test_svg_font_stringr  J  s#    
		#6"7	8BBKKO!!%55)*"t 4 HW w<Di&*CLL5	"# $CLL#)CLL llnGC,>")'
S> /H 	 	> 	S> 64668 	 	E ( GGEN	bBu%kkm 
 99  ++C0D	%BJuRD%78a
 
,,,./8>>sC
 


 +&TF"+555-(H444 9 RXX&&&! 
s   $II&	c                     \         P                  ! 4       p V P                  4       p\        P                  ! R4      pRp\        VRR7      pWP                  n        \        WCRRRR\        RRR7      R	7      pVP                  R
4       VP                  V4       \        4       ;_uu_ 4       pV P                  VRR7       VP                  4       P                  R4      pRRR4       RpVX9   g   Q hR#   + '       g   i     L; i)    r4   )zoomrD  zoffset pointsr   z->zangle,angleA=0,angleB=90,rad=3)
arrowstyleconnectionstyle)xyboxxycoords	boxcoordspad
arrowpropsza test for issue 20044r   r   zutf-8Nz<g id="a test for issue 20044">)r  r  )g333333?g?)g      ^@g      T)r   rO   r   r   onesr   r   r   r   r  r   r   r   r   r   rQ   )	r%   r&   arr_imgxyimageboxabr-   r.   rS   s	            r0   test_annotationbbox_gidr    s     **,C		BgghG	B7-HNN	*!'"1#''+,L$N
B JJ'(MM"	bBu%kkm""7+ 
 1Hs?? 
s   +3C33D	c                    \         P                  ! 4       w  rVP                  . R
O. RO4       V P                  P	                  4        \        4       ;_uu_ 4       pV P                  VRR7       VP                  4       P                  4       pRRR4       \        P                  P                  P                  X4      p\         P                  R,          e   Q hVP                  R4      '       d   Q hRp\         P                  ! RVR7       \        4       ;_uu_ 4       pV P                  VRR7       VP                  4       P                  4       pRRR4       \        P                  P                  P                  V4      p\         P                  R,          V8X  g   Q hVP                  RV R	24      '       g   Q hR#   + '       g   i     EL:; i  + '       g   i     L; i)z=Test that `svg.id` rcparam appears in output svg if not None.r   r   Nzsvg.idz.[@id]za test for issue 28535)r   z.[@id="r   r   )r   r   r8   )r   r   r\   r   r   r   r   r   rQ   r    r   r   r   rc   r   rv  )r%   r&   r-   r.   r   svg_ids         r0   
test_svgidr    sQ    llnGCGGIy!JJOO 
bBu%kkm""$ 
 99  ++C0D<<!)))||H%%%% &FFF5V	bBu%kkm""$ 
 99  ++C0D<<!V+++<<'&,----) 
 
s   2F=2G=G	G!	)z7'DejaVu Sans', 'WenQuanYi Zen Hei', 'Arial', sans-serifz='DejaVu Serif', 'WenQuanYi Zen Hei', 'Times New Roman', serifz%'Arial', 'WenQuanYi Zen Hei', cursivez&'Impact', 'WenQuanYi Zen Hei', fantasyzA'DejaVu Sans Mono', 'WenQuanYi Zen Hei', 'Courier New', monospace)BrY  ior   pathlibr   xml.etree.ElementTreer    xml.parsers.expatrt  numpyr   
matplotlibr   matplotlib.figurer   matplotlib.patchesr   matplotlib.textr   matplotlib.pyplotpyplotr   matplotlib.testing.decoratorsr   r	   matplotlib.testing._markersr
   r   rq  r   r   r   r1   r;   rK   rM   r`   rd   rt   r|   r   r   r  contextr   r   r   r  r  rR   r  r+  rF  rH  ra  ry  r{  markparametrize	TypeError
ValueErrorr  r  r  r  r  r  r<   r0   <module>r     s           $ %    O 4 ) >& ./TBF CF
 9+404 14 )*+2 ,2 <=>2 ?2 = = (J )J, u~6 7(6(t 9H  H2"<~#6?006#D4B2 6*r *+5	@ 6	@ *+,	@ -	@ 1a[)KLqc]I8:!_i791#	<>^Y68!y;=q\946]I57U^Z!78!4 $9%$93  &  *T5M:.' ;.'b>.r<   