
    sg:^                     X   d Z ddlZddlZddlmZmZ ddlZdad Zddl	m
Z
 ddlmZ ddlmZ g d	Zd
ad5dZd Zd Zd Zd Z ee      Zdeej1                  d      <   eD  ci c]  } |  e|        c} Zej5                  d eD               ed   ed<   ed   ed<   ded<   d Zd ZeD ci c]  }| e|       c}Zej5                  d eD               d Zd Z ee      Z de e j1                  d      <   e D  ci c]  } |  e|        c} Z!e!j5                  d e D               ed   e!d<   ed   e!d<   de!d<   ddd d!d"d#d$d%d&d'd(
Z"d)d*d+d,d-d.d/d0d1d2d3d4d5Z#d6 Z$d7 Z%d8 Z&d9 Z'd: Z(d; Z)d< Z*i Z+i Z,d=D ]  Z- e$e-      e+e-<    d>D ]  Z- e(e-      e,e-<    d?D ]  Z. e%e.      e+e.<     e/d@      D cg c]
  } e0|       c}D ]  Z1 e&e1      e+e1<    e)e1      e,e1<    dAD ]  Z2 e'e2      e+e2<    e*e2      e,e2<    i dBdC dDdE dFdG dHdI dJdK dLdM dNdO dPdQ dRdS dTdU dVdW dXdY dZd[ d\d] d^d_ d`da dbdc dd de dfZ3dg Z4dh Z5di Z6dj Z7dk Z8dl Z9dm Z:dn Z;i do e7do       e4do       e8do      fdofdp e7dp       e4dp       e8dp      fdpfdq e7dq       e5dq       e9dq      fdqfdr e7dr       e5dr       e9dr      fdrfds e7dt       e4ds       e8ds       e6ds      fdsfdu e7dt       e4du       e8du       e6du      fdufdv edw      dx edy      dz ed{      d| ed}      d~ ed      d ed      d ed      d ed      d ed      d edw       ed       ed      fdfd edw       ed       ed      fdf e7dq       e7dq       e9dq      f ed      f e7dr       e7dr       e9dr      f ed      f e7dq       e5dq       e7dq      f ed      f e7dr       e5dr       e7dr      f ed      f e7d       ed       ed      f ed4      f ed      d ed       ed      f ed      f ed       ed       ed       ed      d
Z<dddddddvddddddddZ=d Z>d Z?d Z@ ed       ed       ed      dZAd ZB eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd       eBd      dZCi dddddddd edë      fdd edū      fdd edǫ      fddɓdd˓dd͓ddϓddѓddӓdd edի      fdd ed׫      r" edث      r ed׫       ed׫      z    edث      z   ndfdd edګ      r* edګ      r" edث      r edګ       edګ      z    edث      z   ndfdd edܫ      fZDd݄ ZEi d ed߫      d ed      d ed      d ed      xr d ed      z   d ed      d ed      d ed      d ed      xr  ed       ed      z   d ed      d ed      d ed      d ed      d ed      d ed      d ed      d ed      d ed      i d ed       d ed      d ed      d ed      d ed      d	 edܫ      d
 ed      d ed      d ed      d ed      ddd ed      d ed      d ed      d ed      d ed      d ed       ed       ed       ed        ed!       ed"       ed#       ed"       ed#       ed$       ed%       ed&       edy       ed{      d'ZFd6d(ZGd7d)ZHd* ZIeJj                   e e/ eLd+       eLd,                   e e/ eLd-       eLd.                  z         ZMd/ ZNd0 ZOd1 ZPd2 ZQd8d3ZRd8d4ZSyc c} w c c}w c c} w c c}w (9  z=Symbolic primitives + unicode/ASCII abstraction for pretty.py    N)ascii_lowercaseascii_uppercase c                 d    	 t        j                  |       S # t        $ r t        d| z  z  aY yw xY w)z
    Get a unicode character by name or, None if not found.

    This exists because older versions of Python use older unicode databases.
    zNo '%s' in unicodedata
N)unicodedatalookupKeyErrorunicode_warnings)names    Y/var/www/html/venv/lib/python3.12/site-packages/sympy/printing/pretty/pretty_symbology.pyUr   
   s;    !!$'' 84??s    //)split_super_sub)greeks)sympy_deprecation_warning)
greek_unicodesubsupxsymvobjhobjpretty_symbol	annotated
center_padcenterFc                 l    | t         S | r!t        rt        j                  t               dat         }| a |S )z8Set whether pretty-printer should use unicode by defaultr   )_use_unicoder
   warningswarn)flaguse_unicode_prevs     r   pretty_use_unicoder!   )   s9     | &'#L    c                     t        t        j                  dd      } | yg }|t        j	                         z  }|t
        j	                         z  }|D ]  }| y	 |j                  |         t        d       y# t        $ r Y  yw xY w)z>See if unicode output is available and leverage it if possibleencodingNT)	getattrsysstdoutr   valuesatoms_tableencodeUnicodeEncodeErrorr!   )r$   symbolsss      r   pretty_try_use_unicoder.   :   s     szz:t4H G }##%%G {!!##G 9	HHX t	 " 		s   A88	BBc                  .    t        ddd       t        |  S )Nzv
        The sympy.printing.pretty.pretty_symbology.xstr() function is
        deprecated. Use str() instead.
        z1.7z$deprecated-pretty-printing-functions)deprecated_since_versionactive_deprecations_target)r   str)argss    r   xstrr4   Y   s#    	 "'#I :r"   c                 :    t        d| j                         z        S )NzGREEK SMALL LETTER %sr   upperls    r   <lambda>r:   e   s    a'!'')34 r"   c                 :    t        d| j                         z        S )NzGREEK CAPITAL LETTER %sr6   r8   s    r   r:   r:   f   s    a)AGGI56 r"   lamdalambdac              #   d   K   | ](  }|d    j                         |dd z   t        |      f * ywr      Nr7   G.0Ls     r   	<genexpr>rF   n   s.     IaadjjlQqrU*AaD1I   .0LamdaLambdau   ςvarsigmac                 :    t        d| j                         z        S NzMATHEMATICAL BOLD SMALL %sr6   r8   s    r   r:   r:   v   s    a,qwwy89 r"   c                 :    t        d| j                         z        S )NzMATHEMATICAL BOLD CAPITAL %sr6   r8   s    r   r:   r:   w   s    a.:; r"   c              #   6   K   | ]  }|t        |      f  y wN)BrC   s     r   rF   rF   z   s     7!Q!I7s   c                 :    t        d| j                         z        S rL   r6   r8   s    r   r:   r:   }   s    q-	9: r"   c                 :    t        d| j                         z        S )NzMATHEMATICAL BOLD CAPITAL  %sr6   r8   s    r   r:   r:   ~   s    q01779<= r"   c              #   d   K   | ](  }|d    j                         |dd z   t        |      f * ywr?   rA   rC   s     r   rF   rF      s.     S11Q4::<!AB%/16SrG   u   𝛓ZEROONETWOTHREEFOURFIVESIXSEVENEIGHTNINE)
0123456789z	PLUS SIGNMINUSzEQUALS SIGNzLEFT PARENTHESISzRIGHT PARENTHESISzLEFT SQUARE BRACKETzRIGHT SQUARE BRACKETzLEFT CURLY BRACKETzRIGHT CURLY BRACKETzCURLY BRACKET	SUMMATIONINTEGRAL)+-=()[]{}{}sumintc                 :    t        d| j                         z        S )NzLATIN SUBSCRIPT SMALL LETTER %sr6   letters    r   r:   r:          a9FLLNJK r"   c                 :    t        d| j                         z        S )NzGREEK SUBSCRIPT SMALL LETTER %sr6   rx   s    r   r:   r:      rz   r"   c                 ,    t        dt        |    z        S NzSUBSCRIPT %sr   
digit_2txtdigits    r   r:   r:      s    aE)::; r"   c                 ,    t        dt        |    z        S r}   r   	symb_2txtsymbs    r   r:   r:      s    a489 r"   c                 :    t        d| j                         z        S )Nz!SUPERSCRIPT LATIN SMALL LETTER %sr6   rx   s    r   r:   r:      s    a;fllnLM r"   c                 ,    t        dt        |    z        S NzSUPERSCRIPT %sr~   r   s    r   r:   r:      s    a(:e+<<= r"   c                 ,    t        dt        |    z        S r   r   r   s    r   r:   r:      s    a(9T?:; r"   aeioruvxhklmnpstin)betagammarhophichi
   z+-=()mathringc                     t        | d      S )Nu   ̊center_accentr-   s    r   r:   r:      s    -+EF r"   ddddotc                     t        | d      S )Nu   ⃜r   r   s    r   r:   r:      s    a)HI r"   dddotc                     t        | d      S )Nu   ⃛r   r   s    r   r:   r:      s    }Q(HI r"   ddotc                     t        | d      S )Nu   ̈r   r   s    r   r:   r:      s    mA'@A r"   dotc                     t        | d      S )Nu   ̇r   r   s    r   r:   r:      s    ]1&?@ r"   checkc                     t        | d      S )Nu   ̌r   r   s    r   r:   r:          }Q(=> r"   brevec                     t        | d      S )Nu   ̆r   r   s    r   r:   r:      r   r"   acutec                     t        | d      S )Nu   ́r   r   s    r   r:   r:          }Q(DE r"   gravec                     t        | d      S )N   ̀r   r   s    r   r:   r:      r   r"   tildec                     t        | d      S )Nu   ̃r   r   s    r   r:   r:      r   r"   hatc                     t        | d      S )Nu   ̂r   r   s    r   r:   r:          ]1&GH r"   barc                     t        | d      S )Nu   ̅r   r   s    r   r:   r:      s    ]1&>? r"   vecc                     t        | d      S )Nu   ⃗r   r   s    r   r:   r:      r   r"   primec                     | dz   S Nu   ′ r   s    r   r:   r:      s
    q} r"   prmc                     | dz   S r   r   r   s    r   r:   r:      s
    Q{] r"   normc                     d| z   dz   S )Nu   ‖r   r   s    r   r:   r:      s    023MM r"   avgc                     d| z   dz   S )Nu   ⟨u   ⟩r   r   s    r   r:   r:      s    :1<=cc r"   c                     d| z   dz   S N|r   r   s    r   r:   r:          (*+>> r"   c                     d| z   dz   S r   r   r   s    r   r:   r:      r   r"   )absmagc                 ,    t        dt        |    z        S )Nz%s UPPER HOOKr   r   s    r   r:   r:          1_y67 r"   c                 ,    t        dt        |    z        S )Nz%s UPPER CORNERr   r   s    r   r:   r:          1&489 r"   c                 ,    t        dt        |    z        S )Nz%s MIDDLE PIECEr   r   s    r   r:   r:      r   r"   c                 ,    t        dt        |    z        S )Nz%s EXTENSIONr   r   s    r   r:   r:      s    1^io56 r"   c                 ,    t        dt        |    z        S )Nz%s LOWER HOOKr   r   s    r   r:   r:      r   r"   c                 ,    t        dt        |    z        S )Nz%s LOWER CORNERr   r   s    r   r:   r:      r   r"   c                 ,    t        dt        |    z        S )Nz%s TOPr   r   s    r   r:   r:      s    1X	$/0 r"   c                 ,    t        dt        |    z        S )Nz	%s BOTTOMr   r   s    r   r:   r:      s    1[9T?23 r"   rn   ro   rp   rq   rr   rt   rs   r   zBOX DRAWINGS LIGHT VERTICALTeez$BOX DRAWINGS LIGHT UP AND HORIZONTALUpTackz&BOX DRAWINGS LIGHT DOWN AND HORIZONTALzcorner_up_centre(_extzLEFT PARENTHESIS EXTENSIONz)_extzRIGHT PARENTHESIS EXTENSIONz(_lower_hookzLEFT PARENTHESIS LOWER HOOKz)_lower_hookzRIGHT PARENTHESIS LOWER HOOKz(_upper_hookzLEFT PARENTHESIS UPPER HOOKz)_upper_hookzRIGHT PARENTHESIS UPPER HOOK<z5BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFTz5BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT>z
LEFT FLOORzRIGHT FLOORzLEFT CEILINGzRIGHT CEILINGrv   zTOP HALF INTEGRALzBOTTOM HALF INTEGRAL_OVERLINEzN-ARY SUMMATIONzBOX DRAWINGS LIGHT HORIZONTALzLOW LINE)
lfloorrfloorlceilrceilrv   ru   rl   r   /\)r   r   r   rn   )r   r   r   ro   ))rp   rp   rp   rp   ))rq   rq   rq   rq   ))r   r   r   r   rr   ))r   r   r   r   rs   )r   r   )r   r   )z | z  /z/  rl   r   r   )rn   ro   rp   rq   rr   rs   r   r   r   rv   rl   r   r   r   c                    |dk  rt        d      t        rt        }nt        }||    }dx}x}x}}t	        |t
              s|}n5t	        |d   t
              r|d   }	|d   }n|}	|	d   }	 |	d   }|	d   }|	d   }||}||}||}||dz  dk(  r|dz  }n|}|dk(  r|S g }
|dz
  dz  }|dz
  |dz  z
  }|
|gz  }
|
|g|z  z  }
|
|g|z  z  }
|
|g|z  z  }
|
|gz  }
|
S # t        $ r Y nw xY w)zVConstruct spatial object of given length.

    return: [] of equal-length strings
    r   zLength should be greater than 0Nr@         )
ValueErrorr   _xobj_unicode_xobj_ascii
isinstancetuple
IndexError)r   length_xobjvinfoc1topbotmidextvlongresnextnmids                r   xobjr   E  sr    {:;; $KEBsSeU#eAh&!HEqBEAh	(C(C(C 
z
{
{
QJ1 aKF {	
CQJ?DQJ$q& DC5LCC5:CC5:CC5:CC5LCJ?  		s   *C 	C('C(c                 8    dj                  t        | |            S )zBConstruct vertical object of a given height

       see: xobj
    
joinr   )r   heights     r   r   r     s    
 99d4(**r"   c                 8    dj                  t        | |            S )zCConstruct horizontal object of a given width

       see: xobj
    r   r   )r   widths     r   r   r     s    
 77Du%''r"   zSQUARE ROOTz	CUBE ROOTzFOURTH ROOT)r   r      c                     t        d| z        S )NzVULGAR FRACTION %s)r   )txts    r   r:   r:     s    '#-. r"   zONE HALFz	ONE THIRDz
TWO THIRDSzONE QUARTERzTHREE QUARTERSz	ONE FIFTHz
TWO FIFTHSzTHREE FIFTHSzFOUR FIFTHSz	ONE SIXTHzFIVE SIXTHSz
ONE EIGHTHzTHREE EIGHTHSzFIVE EIGHTHSzSEVEN EIGHTHS))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==)rm   rm   )r   r   )r   r   z<=zLESS-THAN OR EQUAL TOz>=zGREATER-THAN OR EQUAL TOz!=zNOT EQUAL TO:=)r  r  +=)r  r  -=)r  r  *=)r  r  /=)r  r  %=)r  r  *zDOT OPERATORz-->zEM DASHzBLACK RIGHT-POINTING TRIANGLEz==>zBOX DRAWINGS DOUBLE HORIZONTAL.zRING OPERATORc                 4    t         |    }t        r|d   S |d   S )zget symbology for a 'character'r@   r   )_xsymr   )symops     r   r   r     s     	sB!u!ur"   Exp1zSCRIPT SMALL EPizGREEK SMALL LETTER PIInfinityINFINITYNegativeInfinityImaginaryUnitzDOUBLE-STRUCK ITALIC SMALL IEmptySetz	EMPTY SETNaturalszDOUBLE-STRUCK CAPITAL N	Naturals0zSUBSCRIPT ZEROIntegerszDOUBLE-STRUCK CAPITAL Z	RationalszDOUBLE-STRUCK CAPITAL QRealszDOUBLE-STRUCK CAPITAL R	ComplexeszDOUBLE-STRUCK CAPITAL CUniversez$MATHEMATICAL DOUBLE-STRUCK CAPITAL UIdentityMatrixz$MATHEMATICAL DOUBLE-STRUCK CAPITAL I
ZeroMatrixz%MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO	OneMatrixz$MATHEMATICAL DOUBLE-STRUCK DIGIT ONEDifferentialzDOUBLE-STRUCK ITALIC SMALL DUnionUNION	ElementOfz
ELEMENT OFSmallElementOfzSMALL ELEMENT OFSymmetricDifference	INCREMENTIntersectionINTERSECTIONRingMultiplicationzMULTIPLICATION SIGNTensorProductzN-ARY CIRCLED TIMES OPERATORDotszHORIZONTAL ELLIPSISzModifier Letter Low RingEmptySequenceSuperscriptPluszSUPERSCRIPT PLUS SIGNSuperscriptMinuszSUPERSCRIPT MINUSDaggerDAGGERDegreezDEGREE SIGNAndzLOGICAL ANDOrz
LOGICAL ORzNOT SIGNNORNANDXORzLEFT RIGHT DOUBLE ARROWz#LEFT RIGHT DOUBLE ARROW WITH STROKEzRIGHTWARDS ARROWzRIGHTWARDS ARROW FROM BARzRIGHTWARDS ARROW WITH STROKE)NotNorNandXorEquivNotEquivImplies
NotImpliesArrowArrowFromBarNotArrow	TautologyContradictionc                     t         r-|"| dk(  r|j                  d   dk(  rt        d      S t        |    S ||S t	        d      )z'return pretty representation of an atomr  imaginary_unitjzDOUBLE-STRUCK ITALIC SMALL Jzonly unicode)r   	_settingsr   r)   r	   )	atom_namedefaultprinters      r   pretty_atomrJ    sS    9#?GDUDUVfDgknDn344y))N~&&r"   c                    t         s| S t        |       \  }}}fd ||      }d } ||t              }| ||t              }nd}|^|r,|ddj	                  |D cg c]  } ||       c}      z   z  }|r,|ddj	                  |D cg c]  } ||       c}      z   z  }|S dj	                  |      }	dj	                  |      }
dj	                  ||	|
g      S c c}w c c}w )z(return pretty representation of a symbolc           
         |rt         j                  |       }nt        j                  |       }||S t        t        j                         d d      D ]]  }| j                         j                  |      s#t        |       t        |      kD  s;t	        |    | d t        |        |            c S  |r&dj                  | D cg c]  }t        |    c}      S | S c c}w )Nc                     t        |       S rO   len)ks    r   r:   z2pretty_symbol.<locals>.translate.<locals>.<lambda>9  s
    SV r"   T)keyreverser   )greek_bold_unicodegetr   sortedmodifier_dictkeyslowerendswithrO  r   bold_unicode)r-   	bold_namegGrQ  c	translates        r   r^  z pretty_symbol.<locals>.translate2  s    #''*B""1%B>I-,,.OTR 	OCwwy!!#&3q6#c(?$S))AjCyM9*MNN	O 77Q7LO788 8s   Cc                     g }| D ]I  }|j                  |      }|#	 dj                  |D cg c]  }||   	 c}      }|j	                  |       K |S c c}w # t        t        f$ r Y  y w xY w)Nr   )rT  r   	TypeErrorr	   append)r9   mappingresultr-   prettyr]  s         r   pretty_listz"pretty_symbol.<locals>.pretty_listD  s{     	"A[[^F~ WW!%<Qgaj%<=F MM&!	" 	 &=!8,   s!   AA
AAA+*A+Nr   __ r   )r   r   r   r   r   )	symb_namer[  r   supssubsre  pretty_supspretty_subsr-   sups_resultsubs_resultr^  s              @r   r   r   '  s     &y1D$ T9%D
 dC(K!$, C4!Ha)Ay"9!HIIIDDT#JIa$;#JKKKDhh{+hh{+77D+{344 "I#Js   CC$c                 6    ddd}ddd}t         r||    S ||    S )a  
    Return a stylised drawing of the letter ``letter``, together with
    information on how to put annotations (super- and subscripts to the
    left and to the right) on it.

    See pretty.py functions _print_meijerg, _print_hyper on how to use this
    information.
    )r   r   r   r   u   ┌─
├─
╵)r   r   r   r@   u   ╭─╮
│╶┐
╰─╯)FrB   )r   r   r   r   z _
|_
|
)r   r   r   r@   z __
/__
\_|)r   )ry   
ucode_pics
ascii_picss      r   r   r   d  s>    7L	J )+J
 &!!&!!r"   r   u   ͯu   ⃐u   ⃰c                 $    t        |       t        v S )z,Check whether symbol is a unicode modifier. )ord_remove_combining)r  s    r   is_combiningrv    s     s8(((r"   c                 H    t        |       dz  dz   }| d| }| |d }||z   |z   S )a  
    Returns a string with accent inserted on the middle character. Useful to
    put combining accents on symbol names, including multi-character names.

    Parameters
    ==========

    string : string
        The string to place the accent in.
    accent : string
        The combining accent to insert

    References
    ==========

    .. [1] https://en.wikipedia.org/wiki/Combining_character
    .. [2] https://en.wikipedia.org/wiki/Combining_Diacritical_Marks

    r   r@   NrN  )stringaccentmidpoint	firstpart
secondparts        r   r   r     s?    . 6{a!#Hy!I	"Jv
**r"   c                 >    t        | j                  t                    S )zxUnicode combining symbols (modifiers) are not ever displayed as
    separate symbols and thus should not be counted
    )rO  r^  ru  )lines    r   
line_widthr    s     t~~/011r"   c                 &    t        d | D              S )av  
    Checks whether a string is subscriptable in unicode or not.

    Parameters
    ==========

    subscript: the string which needs to be checked

    Examples
    ========

    >>> from sympy.printing.pretty.pretty_symbology import is_subscriptable_in_unicode
    >>> is_subscriptable_in_unicode('abc')
    False
    >>> is_subscriptable_in_unicode('123')
    True

    c              3   ,   K   | ]  }|t         v   y wrO   )r   )rD   	characters     r   rF   z.is_subscriptable_in_unicode.<locals>.<genexpr>  s     ;IyC;s   )all)	subscripts    r   is_subscriptable_in_unicoder    s    & ;;;;r"   c                 \    | |kD  rt        d      || z
  }|dz  }||z
  }||z  }||z  }||fS )z
    Return the padding strings necessary to center a string of
    wstring characters wide in a wtarget wide space.

    The line_width wstring should always be less or equal to wtarget
    or else a ValueError will be raised.
    znot enough space for stringr   )r   )wstringwtargetfillcharwdeltawleftwrightleftrights           r   r   r     sR     677wFaKEe^FeDvE;r"   c                 \    t        t        |       ||      \  }}dj                  || |g      S )zhReturn a centered string of length determined by `line_width`
    that uses `fillchar` for padding.
    r   )r   r  r   )rx  r   r  r  r  s        r   r   r     s1     Z/AKD%77D&%())r"   rO   )NN)F)rg  )T__doc__r&   r   rx  r   r   r   r
   r   sympy.printing.conventionsr   sympy.core.alphabetsr   sympy.utilities.exceptionsr   __all__r   r!   r.   r4   grB   listgreek_lettersindexr   updatebrP   rZ  gbGBgreek_bold_lettersrS  r   r   LSUBGSUBDSUBSSUBLSUPDSUPSSUPr   r   r9   glranger2   dr-   rV  HUPCUPMIDEXTHLOCLOTOPBOTr   r   r   r   r   rootVFfracr
  r   r)   rJ  r   r   dictfromkeysrt  ru  rv  r   r  r  r   r   )rE   r9   is   000r   <module>r     s   C 
  3   7 ' @0 ">	 56V/6m!!(+ , #00QAaD0   I=I I (0h '0h @j  :;!01A1Q41   77 7 ;=&\ 9@ %++H5 6 (::!a1g:    S@RS S,W5 8 ,W5 8 !J :  
 !" ! 	$ LK;9M=; 
 A!WCF 
 A!WCF 1 B2hCG  )	$Q#a&	$ A!WCF!WCF 
 A!WCF!WCFF I I	
 A 
@ > > E E > 
H 
? 
H $  
"!0 M12 
c34 ?>7> 899679030 s3xS3s8=sC	0
 s3xS3s8=sC0 s3xS3s8=sC0 s3xS3s8=sC0 s4y#c(CHc#hH#N0 s4y#c(CHc#hH#N0 A;<0 
ADE0 AFG0:;0 A;<0  A;<!0" A<=#0$ A;<%0& A<='0( A;<UVUVXY\^)00 A;<UVUVXY\^108  #3xS3s8=qO"3xS3s8=q?OP"3xS3s8=q?PQ"3xS3s8=q?QR"5z1-@+A1E[C\^`abl`mn !XY[^`abl`mop  ri  pj  k  mn  o@  mA  B -.jM EFEF_0j &% %$**%%#  9@AH+( 	~ / zN{O|} {O|~}{O}|~(	:	:	 :	 	D!+,-		
 	D!./0	 	D!N#$	 	<	 	<	 	<	 	<	 	<	 	<	 C>"#	 
E23I,12 Y<!I,.-./8<>	" 
E ././-. 56./0-./
 59:#	. C?#$/	66
q!126 	q!896 q}	6
 q}F#*2E6 q!?@6 q~6 q!:;6 q!:;  4 !:; !12 36 q!:;6 q!:;6  q!:;!6" q!:;#6$ q!GH%6& q!GH'6( q!HI)6* q!GH+6, q!?@-6. qz/60 q162 q!34364 q~566 q0768 q196: q!67;6< q!?@=6> q!67?6@ q!;<A6B C6D q!89E6F q!45G6H q{I6J q/K6N 
q/O6P 	qQ6R  !} x y x !:; !FG !:; !FG !34 !<= !?@ !GH !IJk6r':5z"6 MM$uS1M-NPSTxPy'z"{"5-O)PRUVtRu#vw#x y )+:2<,**U 1 2 ;v 
%s   %`/` `"5`'