
    
3jZK                        S SK r S SKJr  S SKrS SKrS SKJr  S SK	J
r  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr   S SK!r"S SK#J$r$J%r%  S r&S r'\%" S/SSS	9S
 5       r(\$" 5       S 5       r)S r*\%" S/SSS	9S 5       r+S r,\%" S/SSS	9S 5       r-S r.S r/S r0S r1S r2S r3\Rh                  Rk                  S/ SQ5      S 5       r6S r7S r8S r9S r:S  r;S! r<S" r=S# r>S$ r?S% r@g)&    N)chain)check_figures_equalimage_comparisonc            	         [         R                  " 5       n U R                  SS5        U R                  SS5        SnU R                  R                  U5      n[        R                  " USSSSS9nU R                  U5        UR                  U R                  :X  d   e[        R                  " USSSS SS	9nUR                  5       (       d   eU R                  U5        [        UR                  [        R                  5      (       d   e[        R                  " US
S
[        R                  " 5       SS9nU R                  U5        [        UR                  [        R                  5      (       d   e[        R                  " USSSSS9nUR                  5       nUR                  5       (       a   eU R                  U5        UR                  5       U:w  d   eUR                  5       (       d   eUR                  U R                  :X  d   eg )N         r
   yellow      ?)widthheightfcalphax   coral)r   r   r   	transformr   d   )r   r   r   r   )pltaxesset_xlimset_ylim	transDatar   mpatchesEllipse	add_patch
_transformis_transform_set
isinstancemtransformsIdentityTransformget_transform)axxy_dataxy_pixeintermediate_transforms        V/home/wildlama/miniconda3/lib/python3.13/site-packages/matplotlib/tests/test_artist.pytest_patch_transform_of_noner)      s    
BKK1KK1 G\\##G,F 	!LALLO<<2<<''' 	s37#'s	4ALLOallK$A$ABBBB 	s3#.#@#@#B#	OALLOallK$A$ABBBB 	s37"	$A__.!!####LLO?? 6666<<2<<'''    c                     [         R                  " 5       n U R                  SS5        U R                  SS5        SnU R                  R                  U5      n[        R                  " USSS9n[        R                  " U/SSS9nU R                  U5        UR                  5       UR                  5       -   U R                  :X  d   e[        R                  " USSS9n[        R                  " U/S	SS9nUR                  S 5        U R                  U5        [        UR                  5       [        R                   5      (       d   e[        R                  " US
S
S9n[        R                  " U/[        R                   " 5       SS9nU R                  U5        [        UR                  5       [        R                   5      (       d   eg )Nr   r   r	   )r   r   r   r   )	facecolorr   r   r   r   )r   r   )r   r   r   r   r   r   r   r   mcollectionsPatchCollectionadd_collectionget_offset_transformr"   set_transformr   r    r!   )r#   r$   r%   r&   cs        r(   !test_collection_transform_of_noner3   ?   s{    
BKK1KK1 G\\##G,F 	!4A$$aSHCHAa!!#aoo&772<<GGG 	s37A$$aSG+.	0AOODaaoo')F)FGGGG 	s37A$$aS/:/L/L/N+.	0A aa,,.0M0MNNNNr*   clip_path_clippingT_classic_test)remove_textstylec            	         [         R                  R                  5       R                  5       n U =R                  S-  sl        U =R                  S-  sl        [         R                  R                  5       R                  5       nUR                  S S S2   Ul        [         R                  R                  X5      n[         R                  R                  S5      R                  5       nU=R                  S-  sl        [        R                  " SSSSS9u  nu  pV[        R                  " U/S	S
SSSS9nUR                  X%R                  5        UR                  U5        [        R                   " US	S
SSSS9nUR                  X&R                  5        UR#                  U5        UR%                  SS5        UR'                  SS5        g )N   r
      g@r   T)sharexsharey   blueredgffffff?*)lw	edgecolorr,   r   hatchr   )mpathPathunit_rectangledeepcopyverticesunit_circlemake_compound_pathunit_regular_starr   subplotsr-   PathCollectionset_clip_pathr   r/   r   	PathPatchr   r   r   )	exteriorinterior	clip_pathstarfigax1ax2colpatchs	            r(   test_clippingr[   c   sa   zz((*335Hzz%%'002H ))$B$/H

--hAI::''*335DMMSMll1aTBOC#

%
%tff05SMCi/stVu%(5E		==1MM%LLQLLQr*   c                    U R                  S5      nUR                  SS/SS/5      u  n[        R                  " SS/SS/SS/SS/SS//5      n[        R
                  " XBR                  S9nUR                  U5        UR                  S5      nUR                  SS/SS/5        UR                  SSS9  UR                  SSS9  g )	N)r   r   r   r   rE   r   r   r   )r   )r   g      ?)xlimylim)	add_axesplotrF   rG   r   rQ   r   rP   set)fig_testfig_refax_testlpax_refs         r(   test_clipping_zoomrh      s     -G	r1gAw	'BA 	

QFQFQFQFQF;<A1(9(9:AOOAl+F
KKQ"a!
JJKkJ2KK[{K3r*   c                     [         R                  R                  S5      n [         R                  R                  S5      n[        R                  " 5       u  p#UR	                  XS5        UR                  SS5        [        R                  " 5       nUR                  USS9  [        UR                  5       5      S:  d   e[        R                  " 5       nUR                  USS9  [        UR                  5       5      S:  d   eg )	Ni N  zk.r
   r   pdf)formati@  svg)nprandomr   rN   r`   r   ioBytesIOsavefiglengetvalue)xyrV   r#   rj   rl   s         r(   test_cull_markersrv      s    
		A
		AllnGCGGA$KK1
**,CKKEK"s||~%%%
**,CKKEK"s||~&&&r*   hatchingdefaultc            	         [         R                  " SS5      u  p[        R                  " SSSSS9nUR	                  U5        [
        R                  " SS/S/UR                  SS	9nUR                  U5        [        R                  " S
SSSSS9nUR	                  U5        [
        R                  " SS/S/UR                  SSS9nUR                  U5        UR                  SS5        UR                  SS5        g )Nr   r   r   r   r9   /)rD   i>  )g      ?      @)sizesoffsetsoffset_transformrD   )r9   r   C1)rD   rC   )g      @r|   )r}   r~   r   rD   rC   r      	   )r   rN   r   	Rectangler   r-   RegularPolyCollectionr   r/   r   r   )rV   r#   rect1rect2rect3rect4s         r(   test_hatchingr      s    ll1a GC vq!37ELL..	%:,E e vq!3$GELL..	%:,T#E eKK1KK1r*   c                  2   [         R                  " 5       u  pUR                  [        R                  " S5      R                  SS5      5      nUR                  [        S5      5      u  nU R                  (       d   eUR                  (       d   eU R                  R                  5         U R                  (       a   eUR                  (       a   eUR                  (       a   eX!R                  ;   d   eX1R                  ;  d   eUR                  UL d   eUR                  5         UR                  5         X#4 H%  nUR                  b   eUR                  5       c  M%   e   X!R                  ;  d   eU R                  (       d   eUR                  (       d   eg )N$   r;   r>   )r   rN   imshowrm   arangereshaper`   rangestalecanvasdraw_mouseover_setr   remove
get_figure)rV   r#   imlnarts        r(   test_remover      s/   llnGC	299R=((A.	/B
''%(
CB99988O8JJOOyy=xx<xx<"""""&&&&&77b==IIKIIKxxx~~'''  &&&&&99988O8r*   zdefault_edges.pngc            
      ^   [         R                  " SS5      u  n u  u  pu  p4UR                  [        R                  " S5      [        R                  " S5      S[        R                  " S5      S-   [        R                  " S5      S5        UR                  [        R                  " S5      [        R                  " S5      SS9  UR                  SSS	S
[        SS9S9  UR                  SS5        UR                  SS5        [        R                  " [        R                  " / SQ[        R                  R                  [        R                  R                  [        R                  R                  [        R                  R                   /5      SUR"                  S9nUR%                  U5        g )Nr
   
   rt   r   oedge)alignr   BOX   sawtooth)boxstyle)sizebboxr:   )rz   r   r   r   r   rz   none)r   r   )r   rN   r`   rm   r   bartextdictr   r   r   rQ   rF   rG   MOVETOCURVE3	CLOSEPOLYr   r   )rV   rW   rX   ax3ax4pp1s         r(   test_default_edgesr      s&   $'LLA$6!C	!*3jsHHRYYr]BIIbM3YYr]Q		"s4GGBIIbM299R=G7HHQ5rj(AHBLLQLLQ




3JJ%%uzz'8'8JJ%%uzz';';=	> S]]	,C
 MM#r*   c                  R    [         R                  " / / 5      n U R                  5         g N)mlinesLine2D
properties)r   s    r(   test_propertiesr      s    	r2	BMMOr*   c                     [         R                  " / 5        [         R                  " / /5        [         R                  " 5       u  pUR                  [	        S5      5      nUR                  [	        S5      5      n[
        R                  " [        X#5      SS5        [         R                  " UR                  R                  5       SS9  [        R                  " 5       n[         R                  " USUS9  UR                  5       S:X  d   eg )	Nr   rB   r>   green)colorzorder)filez  zorder: float
)r   setprN   r`   r   martistr   spinesvaluesro   StringIOrs   )rV   r#   lines1lines2sios        r(   	test_setpr      s    HHRLHHbTN llnGCWWU1XFWWU1XFLLv&a0HHRYYw/ ++-CHHVXC(<<>0000r*   c                      [         R                  " / / 5      n U R                  SS9  U R                  5       S:X  d   eU R                  SS9  U R                  5       S:X  d   eg )Nr   )	linewidthr>   )rB   )r   r   ra   get_linewidthlines    r(   test_artist_setr     s]    ==R DHHqH1$$$ 	HHHN1$$$r*   c                      [         R                  " SS/SS/5      n [        R                  " [        SS9   U R                  SS9  SSS5        g! , (       d  f       g= f)zC
Test that set() raises AttributeError for invalid property names.
r   r   zunexpected keyword argumentmatch)not_a_propertyN)r   r   pytestraisesAttributeErrorra   r   s    r(   'test_artist_set_invalid_property_raisesr     sF     ==!Q!Q(D	~-J	K" 
L	K	Ks   A
Ac                      [         R                  " SS/SS/5      n [        R                  " [        SS9   U R                  SSS9  SSS5        g! , (       d  f       g= f)	zS
Test that set() raises TypeError when both a property and its alias are provided.
r   r   zaliases of one anotherr   r
   r   )rB   r   N)r   r   r   r   	TypeErrorra   r   s    r(   (test_artist_set_duplicate_aliases_raisesr     sH     ==!Q!Q(D	y(@	AA# 
B	A	As   A
Ac                     [         R                  " 5       u  pUR                  [        S5      S S9u  nUR	                  5       [
        R                  R                  :X  d   eUR                  S5        UR	                  5       S:X  d   eUR                  S 5        UR	                  5       [
        R                  R                  :X  d   eg )Nr>   )r   i@ )	r   rN   r`   r   
get_zorderr   r   r   
set_zorder)rV   r#   r   s      r(   test_None_zorderr   !  s    llnGC
''%(4'
(CB==?fmm22222MM&==?f$$$MM$==?fmm22222r*   zaccept_clause, expected)) unknown)zACCEPTS: [ '-' | '--' | '-.' ]z[ '-' | '--' | '-.' ])zACCEPTS: Some description.Some description.)z.. ACCEPTS: Some description.r   )z	arg : intint)z
*arg : intr   )z"arg : int
ACCEPTS: Something else.zSomething else. c                      " S S[         R                  5      nSU -  UR                  l        [         R                  " U5      R                  S5      nX1:X  d   eg )Nc                       \ rS rSrS rSrg):test_artist_inspector_get_valid_values.<locals>.TestArtisti5  c                     g r    )selfargs     r(   set_f@test_artist_inspector_get_valid_values.<locals>.TestArtist.set_f6      r*   r   N)__name__
__module____qualname____firstlineno__r   __static_attributes__r   r*   r(   
TestArtistr   5      	r*   r   z
    Some text.

    %s
    f)r   Artistr   __doc__ArtistInspectorget_valid_values)accept_clauseexpectedr   valid_valuess       r(   &test_artist_inspector_get_valid_valuesr   +  sU    W^^   	 J
 **:6GGLL###r*   c                      [         R                  " [        R                  5      n U R	                  5       nUS   S1:X  d   eg )Nr   rB   )r   r   r   r   get_aliases)aialiasess     r(   !test_artist_inspector_get_aliasesr   B  s7    		 	 	/BnnG;D6)))r*   c                  n   [         R                  " 5       n [        R                  " [        SS9   U R                  S5        S S S 5        [        R                  " [        SS9   U R                  / SQ5        S S S 5        [        R                  " [        SS9   U R                  S5        S S S 5        [        R                  " [        SS9   U R                  [        R                  5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nr= f! , (       d  f       g = f)N^alpha must be numeric or Noner   string)r   r
   r   outside 0-1 range皙?)	r   r   r   r   r   	set_alpha
ValueErrorrm   nanr   s    r(   test_set_alphar  I  s    
..
C	y(H	Ih 
J	y(H	Ii  
J	z)<	=c 
>	z)<	=bff 
>	= 
J	I	I	I	=	=	=	=s/   C3"DD
 D&3
D
D
D#&
D4c                     [         R                  " 5       n [        R                  " [        SS9   U R                  S5        S S S 5        [        R                  " [        SS9   U R                  S5        S S S 5        [        R                  " [        SS9   U R                  [        R                  5        S S S 5        [        R                  " [        SS9   U R                  SS/5        S S S 5        [        R                  " [        SS9   U R                  S[        R                  /5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr   r   r   r  r  zalpha must be between 0 and 1r   )	r   r   r   r   r   _set_alpha_for_arrayr  rm   r  r  s    r(   test_set_alpha_for_arrayr
  U  s    
..
C	y(H	I  * 
J	z)<	=  % 
>	z)<	=  ( 
>	z)H	I  #s, 
J	z)H	I  #rvv/ 
J	I 
J	I	=	=	=	=	I	I	I	Is;   D6"E EE)"E:6
E
E
E&)
E7:
Fc                    ^ U4S jmSTl         [        R                  " 5       n U R                  T5      nTR                   S:X  d   eU R	                  5         TR                   S:X  d   eU R                  S5        TR                   S:X  d   eU R                  U5        U R	                  5         TR                   S:X  d   eg )Nc                 0   > T=R                   S-  sl         g )Nr   )counter)artistfuncs    r(   r  test_callbacks.<locals>.funcd  s    r*   r   r   r   r
   )r  r   r   add_callbackpchangedr   remove_callback)r   oidr  s     @r(   test_callbacksr  c  s     DL
..
C


4
 C<<1LLN<<1NN2<<1LLN<<1r*   c                  h    " S S[         R                  5      n [        U R                  S5      (       d   eSU R                  R                  ;   d   e " S SU 5      n[        UR                  S5      (       d   eSUR                  R                  ;   d   eSUR                  R                  ;   d   eg)	z3Test autogenerated ``set()`` for Artist subclasses.c                       \ rS rSrS rSrg)%test_set_signature.<locals>.MyArtist1iw  c                     g r   r   r   vals     r(   set_myparam12test_set_signature.<locals>.MyArtist1.set_myparam1x  r   r*   r   N)r   r   r   r   r  r   r   r*   r(   	MyArtist1r  w  r   r*   r  _autogenerated_signaturemyparam1c                       \ rS rSrS rSrg)%test_set_signature.<locals>.MyArtist2i~  c                     g r   r   r  s     r(   set_myparam22test_set_signature.<locals>.MyArtist2.set_myparam2  r   r*   r   N)r   r   r   r   r$  r   r   r*   r(   	MyArtist2r"  ~  r   r*   r&  myparam2Nr   r   hasattrra   r   )r  r&  s     r(   test_set_signaturer*  u  s    GNN  9=="<====.....I  9=="<====..........r*   c                       " S S[         R                  5      n [        U R                  S5      (       a   eU R                  R                  S:X  d   e " S SU 5      nUR                  U R                  L d   eg)z=set() defined in Artist subclasses should not be overwritten.c                       \ rS rSrS rSrg)*test_set_is_overwritten.<locals>.MyArtist3i  c                     g)Not overwritten.Nr   )r   kwargss     r(   ra   .test_set_is_overwritten.<locals>.MyArtist3.set  s    r*   r   N)r   r   r   r   ra   r   r   r*   r(   	MyArtist3r-    s    	#r*   r2  r  r/  c                       \ rS rSrSrg)*test_set_is_overwritten.<locals>.MyArtist4i  r   Nr   r   r   r   r   r   r*   r(   	MyArtist4r4    s    r*   r6  Nr(  )r2  r6  s     r(   test_set_is_overwrittenr7    si    #GNN #
 y}}&@AAAA==  $6666I  ==IMM)))r*   c            	         [         R                  " S5      n SU S'   SU S'   SU S'   SU S	'   S
U S'   SU S'   SU S'   SU S'   SU S'   [        R                  " 5       u  pUR	                  S5        [
        R                  " [         R                  " SSS5      S5      nUR                  U SUS9n/ SQn[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S5        [        R                  S   R                  S5      n[
        R                  " [         R                  " SSS5      S5      nUR                  XUS9n/ SQn[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S5        [        R                  S   R                  S5      n[
        R                  " [         R                  " SSS5      S5      nUR                  XUS9n/ SQn[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [         R                  " S 5      n S!U S
'   S"U S'   S#U S$'   S%U S&'   SU S''   S(U S)'   S*U S+'   / S,Qn[        R                  " 5       u  pUR	                  S-5        [
        R                  " [         R                  " S
SS'S.S/9SS0S1S29nUR                  U SUS9n[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S35        [
        R                  " [         R                  " S
SS'S.S/9SS0S4S29nUR                  U SUS9n[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S55        [
        R                  " [         R                  " S
SS'S.S/9SS0S6S29nUR                  U SUS9n[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S75        [
        R                  " [         R                  " S
SS'S.S/9SS0S8S29nUR                  U SUS9n[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         [        R                  " 5       u  pUR	                  S95        [
        R                  " [         R                  " S
SS'S.S/9SS.S1S29nUR                  U SUS9n[        U R                  U5       H  u  pgUR                  U5      U:X  a  M   e   [        R                  " 5         g:);z7Test if cursor data is correct when using BoundaryNorm.)r   r   g?rz   gGz?)r   r   g+?)r   r
   r:   r   r   r   r   )r   r
   g
ףp=
?)r
   r   g;On?)r
   r   gH}M?r	   z-1..1 to 0..256 in 0.1      RdBu_r)cmapnorm)	[0.9][1.]r?  [-1.0][0.0][1.0][0.09][0.009][0.0009]z-1..1 to 0..256 in 0.01   )	z[0.90]z[0.99]rB  z[-1.00]z[0.00]z[1.00]rC  rD  rE  z-1..1 to 0..256 in 0.001i  )	z[0.900]z[0.990]z[0.999]z[-1.000]z[0.000]z[1.000]z[0.090]rD  rE  )r   r   g      g        g?r
   r   r   r9   g      ?r>   g       @r;   )r@  rA  z[0.1]z[0.5]r>  rB  z[2.0]znoclip, neitherT)endpointFneither)clipextendznoclip, minminznoclip, maxmaxznoclip, bothbothzclip, neitherN)rm   emptyr   rN   suptitlemcolorsBoundaryNormlinspacer   zipflatformat_cursor_dataclosempl	colormaps	resampled)	XrV   r#   r=  imglabels_listvlabelr<  s	            r(   $test_format_cursor_data_BoundaryNormr_    sv   
AAdGAdGAdGAdGAdGAdGAdGAdGAdG llnGCLL)*B2 6<D
))AH4)
0C
K ,%%a(E111 - IIK llnGCLL*+==",,S1DB3 7=D
))At)
,C
K ,%%a(E111 - IIK llnGCLL+,==",,T2DB4 8$?D
))At)
,C
K ,%%a(E111 - IIK 	AAaDAaDAaDAaDAaDAaDAaDK llnGCLL"#
Aq!d+SuYPD
))AH4)
0C,%%a(E111 - IIKllnGCLL
Aq!d+SuULD
))AH4)
0C,%%a(E111 - IIKllnGCLL
Aq!d+SuULD
))AH4)
0C,%%a(E111 - IIKllnGCLL 
Aq!d+SuVMD
))AH4)
0C,%%a(E111 - IIKllnGCLL!
Aq!d+StIOD
))AH4)
0C,%%a(E111 - IIKr*   c                      " S S[         R                  5      n SU R                  ;   d   eU R                  S   U R                  L d   e " S SU 5      nSUR                  ;  d   eUR                  U R                  L d   eg )Nc                       \ rS rSrSrg)$test_auto_no_rasterize.<locals>.Gen1i9  r   Nr5  r   r*   r(   Gen1rb  9      r*   rc  r   c                       \ rS rSrSrg)$test_auto_no_rasterize.<locals>.Gen2i?  r   Nr5  r   r*   r(   Gen2rf  ?  rd  r*   rg  )r   r   __dict__r   )rc  rg  s     r(   test_auto_no_rasterizeri  8  sw    w~~  T]]"""== DII---t  &&&99		!!!r*   c                       " S S[         R                  5      n U " 5       n[        R                  " 5       nSUR	                  US5      :X  d   eSUR	                  USS9:X  d   eg )Nc                       \ rS rSrS rSrg)1test_draw_wraper_forward_input.<locals>.TestKlassiG  c                     U$ r   r   )r   rendererextras      r(   r   6test_draw_wraper_forward_input.<locals>.TestKlass.drawH  s    Lr*   r   N)r   r   r   r   r   r   r   r*   r(   	TestKlassrl  G  s    	r*   rq  aardvark)ro  )r   r   mbackend_basesRendererBaser   )rq  r   rn  s      r(   test_draw_wraper_forward_inputru  F  s]    GNN  +C**,H(J7777(*====r*   c                  V   [         R                  " 5       n U R                  5       nUR                  5       nUR                  5       nU R	                  SS9U L d   eU R	                  SS9U L d   eUR	                  5       UL d   eUR	                  SS9UL d   eUR	                  SS9U L d   eUR	                  SS9UL d   eUR	                  SS9U L d   e[
        R                  " [        R                  5         UR	                  5       U L d   e S S S 5        UR	                  5       U L d   e[        R                  " / / 5      nUR	                  SS9b   eUR	                  SS9b   eUR                  UL d   eU R                  U L d   eUR                  U L d   eg ! , (       d  f       N= f)NT)rootF)r   figure
subfiguresrN   r   r   warnsrW  MatplotlibDeprecationWarningr   r   )rV   sfig1sfig2r#   r   s        r(   test_get_figurer~  R  s   
**,CNNEE		B>>t>$+++>>u>%,,,==?e###==e=$---==d=#s*** '5000&#---	c66	7!S((( 
8 $$$ 
r2	B==d=#+++==e=$,,, 99::<<3 
8	7s   7F
F()Aro   	itertoolsr   numpyrm   r   matplotlib.colorscolorsrP  matplotlib.pyplotpyplotr   matplotlib.patchespatchesr   matplotlib.lineslinesr   matplotlib.pathpathrF   matplotlib.transforms
transformsr    matplotlib.collectionscollectionsr-   matplotlib.artistr  r   matplotlib.backend_basesbackend_basesrs  
matplotlibrW  matplotlib.testing.decoratorsr   r   r)   r3   r[   rh   rv   r   r   r   r   r   r   r   r   r   markparametrizer   r   r  r
  r  r*  r7  r_  ri  ru  r~  r   r*   r(   <module>r     sA   	    #  % !  + - # 1  O'(T!OH '(d/R S6 4 4$'" :,D	B C2: &'TK L"
1$%#$3 2 5 $$*	0$/$* ^B"	>r*   