
    \h.M                     |   S SK r S SKJr  S SKJrJr  S SKJrJr  S SK	J
r
  S SKJrJr  S SKJr  S SKJrJr  S S	KJr  S S
KJr  S SKJr  S SKJrJrJrJrJrJrJ r J!r!J"r"J#r#J$r$J%r%  S SK&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0J1r1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?J@r@JArAJBrBJCrCJDrD  S SKEJFrFJGrGJHrHJIrIJJrJJKrKJLrLJMrM  S SKNJOrOJPrP  S SKQJRrRJSrS  S SKTJUrU  S SKVJWrW  \OS   rXS rYS rZS r[S r\S r]S r^S r_S r`S raS rbS rcS rdS  reS! rfS" rgS# rhS$ riS% rjS& rkS' rlS( rmS) rnS* roS+ rpS, rqS- rrS. rsS/ rtS0 ruS1 rvS2 rwS3 rxS4 ryg)5    N)Add)Functiondiff)NumberRational)S)Symbolsymbols)Abs)explog)sqrt)sin)	integrate)amount_of_substancearea
convert_to	find_unitvolume	kilometerjoulemolar_gas_constantvacuum_permittivityelementary_chargevoltohm)amuau
centimetercoulombdayfootgramshourinchkgkmmmeter
millimeterminutequartssecondspeed_of_lightbitbytekibibytemebibytegibibytetebibytepebibyteexbibytekilogramgravitational_constantelectron_rest_mass)	Dimensionchargelengthtimetemperaturepressureenergymass)PREFIXESkilo)PhysicalConstantQuantity)SI)raiseskc                  .    [        [        5      S:X  d   eg )Nr8   )strr&        a/var/www/auris/envauris/lib/python3.13/site-packages/sympy/physics/units/tests/test_quantities.pytest_str_reprrO   #   s    r7j   rM   c                  \    S[         -  S[         -  :X  d   eS[         -  S[        -  :w  d   eg )N
   )r(   r-   rL   rM   rN   test_eqrR   '   s*    a42a4<<a42a4<<rM   c                  2   [        S5      n U R                  [        S5      [        5        U R	                  [
        5      S[
        -  :X  d   e[        R                  " [
        [        -  5      S[
        -  [        -  :X  d   e[        R                  " [        5      S[        -  :X  d   eU R	                  [        5      U :X  d   e[        R                  " [
        5      [        :X  d   e[        [        -  n[	        U[        5      nU[        [        -  :X  d   eg )Nq1  iJxiQ )rF    set_global_relative_scale_factorr   r)   r   r(   r/   r-   r!   r   r.   )qexprconvs      rN   test_convert_torZ   -   s    A&&qw6<<?d1f$$$$$QU+y1}q/@@@@>>!a''' <<?a$$Q'>999<DdE"D5<rM   c                  D   [        SSS9n U R                  S[        5        [        SSS9nUR                  S[        5        [        S5      nUR                  " [        [        5        [        S5      nUR                  S[        -  [        5        U R
                  S:X  d   eU R                  [        :X  d   eU R                  [        S5      :X  d   eUR                  [        :X  d   eUR
                  S:X  d   eUR                  [        S5      :X  d   eUR
                  S	:X  d   eUR                  " UR                  6 U:X  d   eUR                  " UR                  6 R                  UR                  :X  d   eUR                  [        :X  d   eUR
                  S
:X  d   eg )Ns10sabbrabbrevrQ   udamr'        rU   )rF   rV   r.   r)   rD   scale_factor	dimensionr>   r_   r	   r=   funcargs)rW   r`   r'   vs       rN   test_Quantity_definitionri   ?   sZ   w'A&&r62U#A&&r51	$B''e4A&&qvu5>>R;;$88vg&&&;;&   >>R88ve}$$$??d"""77BGG"""77BGG!!RWW,,,;;&   >>T!!!rM   c                     [        S5      n U R                  [        R                  [        5        U R
                  [        S5      :X  d   eU R                  [        S5      :X  d   e[        SSS9n U R                  [        S5      [        5        U R
                  [        S5      :X  d   eU R                  [        S5      :X  d   eU R                  S:X  d   e[        U R                  [        5      (       d   e[        SSS9n U R                  S[        -  [        5        U R                  [        S5      :X  d   eU R                  S:X  d   eg )Nr`   omr^      ikm     )rF   rV   r   Oner)   namer	   r_   rd   
isinstancer   rD   r`   s    rN   test_abbrevrt   Y   s   A&&quue466VC[   88vc{"""T"A&&qtU366VC[   88vd|###>>Qannf----U#A&&qvu588ve}$$$>>T!!!rM   c                  \    [        SSS9n [        U 5      S:X  d   e[        U 5      S:X  d   eg )Nunitnamera   r^   )rF   reprrK   rs   s    rN   
test_printrx   o   s2    E*A7j   q6ZrM   c                      [        SSS9n [        S5      nX:w  d   e[        SSS9nX:w  d   e[        SSS9nX:w  d   eg )	Nr`   ra   r^   v1v2dsv3dm)rF   )r`   rh   s     rN   test_Quantity_eqr   u   sJ    U#AA6M6d#A6M6d#A6M6rM   c                     [        S5      n [        S5      n[        S5      nU R                  [        S5      [        5        UR                  [        S5      [        5        UR                  [        S5      [        5        [        X-   [        5      (       d   eXR                  U 5      -   S[        R                  -   U -  :X  d   e[        X-
  [        5      (       d   eXR                  U 5      -
  [        R                  U -  :X  d   eg )Nr`   rh   wrQ   rb   rl      )	rF   rV   r   r)   r.   rr   r   r   Half)r`   rh   r   s      rN   test_add_subr      s    AAA&&que4&&qtU3&&qtV4aeS!!!!QQZN222aeS!!!!QAFF1H,,,rM   c                  X   [        S5      n [        S5      n[        S5      nU R                  S[        [        -  5        UR                  S[        [        -  5        UR                  S[        [        -  5        U[	        X-
  5      -
  n[
        R                  " U 5      [        [        -  R                  :X  d   e[        [
        R                  " U5      5      n[
        R                  " 5       R                  U5      [        S[        S0:X  d   e[        [        [        S-  5      :X  d   eg )Nv_w1v_w2v_w3r   rl   )rF   rV   r)   r.   r   rG   get_dimensional_exprr=   r>   rq   r;   get_dimension_systemget_dimensional_dependenciesr   )r   r   r   rX   Dqs        rN   test_quantity_absr      s    FDFDFD))!U6\:))!U6\:))!U6\:#dk""D""4(VD[,>,>>>>	2**40	1B""$AA"EbJ    DN"""rM   c                    ^^^ [        S5      m[        S5      n [        S5      mTR                  [        S5      [        5        U R                  [        S5      [        5        TR                  [        S5      [        5        S m[        [        UUU4S j5        [        [        UUU4S	 j5        [        [        UU4S
 j5        [        [        UU4S j5        [        [        UUU4S j5        g )Nr`   rh   r   rQ   rb   rl   c                 0    [         R                  " U 5        g N)rG   _collect_factor_and_dimension)rX   s    rN   check_unit_consistency;test_check_unit_consistency.<locals>.check_unit_consistency   s    
((.rM   c                     > T " TT-   5      $ r   rL   r   r`   r   s   rN   <lambda>-test_check_unit_consistency.<locals>.<lambda>       5a!e<rM   c                     > T " TT-
  5      $ r   rL   r   s   rN   r   r      r   rM   c                     > T " TS-   5      $ Nr   rL   r   r`   s   rN   r   r      r   rM   c                     > T " TS-
  5      $ r   rL   r   s   rN   r   r      r   rM   c                  2   > T " S[        TT-  5      -
  5      $ r   )r   r   s   rN   r   r      s    5a#a!e*nErM   )rF   rV   r   r)   r.   rH   
ValueError)rh   r   r`   r   s    @@@rN   test_check_unit_consistencyr      s    AAA&&que4&&qtU3&&qtV4/ :<=
:<=
:<=
:<=
:EFrM   c                  |   [        S5      n [        S5      n[        S5      n[        S5      n[        S5      nU R                  [        S5      [        5        UR                  [        S5      [        5        UR                  [        S5      [        5        UR                  [        S5      [        [        -  5        UR                  [        S5      [        [        -  5        S	U -  U S
-  :X  d   eU S	-  U :X  d   eX-  nUnXT:w  d   eXTR                  U5      :X  d   eU S	-  U :X  d   eX-  nUnXg:w  d   eXgR                  U5      :X  d   e[        S5      nUR                  [        S5      S	[        -  5        X-  S:w  d   eU S-  S	:X  d   eU S	-  U :X  d   e[        S5      n	[        S5      n
U	R                  [        S5      [        S-  5        U
R                  [        S	S5      S	[        -  5        U S-  U	:w  d   eU S
-  U
:w  d   eU S-  U	R                  U 5      :X  d   eU S
-  U
R                  U 5      :X  d   eg )Nr`   rh   tutrQ   rb   rl      r   r   lp1r   u2u3d   )rF   rV   r   r)   r.   r   r   )r`   rh   r   r   r{   rz   ut1ut2r   r   r   s              rN   test_mul_divr      s   AAA	$B	#B&&que4&&qtU3&&qtV4''"uV|<''!eFl;q5AGq5A::	
B	
B 8O8r"""" q5A::
%C
C ::..%%%% 5/C((1qw77b==a4199a4199 
$B	$B''#q9''B5A6R<<7b==6R]]1%%%%7bmmA&&&&rM   c                  l   [        S[        -  [        -  [        -  [        -  S5      S:X  d   e[        [
        [        -  [        5      [        SS5      :X  d   e[        [        [        [        -  [        5      R                  S5      5      S:X  d   eS[        -  [        -  [        -  n [        [        U [        [        -  5      [        5      n U R                  5       [        SS	5      :X  d   e[!        [        S-  5      [        :X  d   e[!        [        5      S-  [        :X  d   e[#        S
5      n [%        U [        -  [        -  U S[        -  S[        -  45      S[        -  [        -  :X  d   eU [        -  [        -  R%                  U S[        -  S[        -  45      S[        -  [        -  :X  d   eg )Nrb   r   i  i  i'  rl   z6.0e+23l   !|8. l   eJ r      )r   r(   r-   r!   r'   r"   r)   r   rK   r#   r   nr   r/   r+   simplifyr   r	   r   )r   s    rN   
test_unitsr      sY   qs1us{b(!,333dUlE*htU.CCCC z%)U+--a01Y>>> 
2	&(A:a0%8A::<8K<<<< 1:??Ga<1sAQqSUQ!QqSM*bd1f444E!G1Q3!}-Aa777rM   c                      [        S[        -  [        S-  -  [        5      S:X  d   e[        S[        -  [        S-  -  [        5      S:X  d   eg )N   rn      )r   r,   r%   r)   r*   rL   rM   rN   test_issue_quartr     sF    a%i$!)+U3s:::a%i$!)+Z8C???rM   c                      [        [        [        5      S[        -  :X  d   e[        [        [        5      S[        -  :X  d   eg )Ngy9goR:)r   r:   r8   r#   rL   rM   rN   test_electron_rest_massr   
  s:    ((37G7PPPP(%04DU4JJJJrM   c                  @    [         [        :  R                  (       d   eg r   )r(   r-   is_RelationalrL   rM   rN   test_issue_5565r     s    E    rM   c                     [        S5      / SQ:X  d   e[        [        5      / SQ:X  d   e[        [        5      / SQ:X  d   e[        [        5      / SQ:X  d   e[        [        S-  5      / SQ:X  d   e[        [        S-  5      / SQ:X  d   e[        [        S-  5      / SQ:X  d   e[        [        S	-  5      / S
Q:X  d   e[        S5      / SQ:X  d   e[        [
        5      / SQ:X  d   eg )Nr    )r    coulombscoulomb_constant)Cr    r   planck_charger   )1r(   r   cmr~   ftr'   lymimmnmpmumydnmifeetr"   r%   mileyardr)   milesyardsinchesmetersmicronmicronsangstrom	angstroms	decimeterr   	lightyear	nanometer	picometerr   
decimeters
kilometers
lightyears
micrometerr*   
nanometers
picometerscentimetersmicrometersmillimetersnautical_mileplanck_lengthnautical_milesastronomical_unitastronomical_unitsr   )Ddioptreoptical_powerrl   )hahectareplanck_arearn   )LlcLcldLdlmLmlliterr,   litersquarts	deciliter
centiliter
deciliters
millilitercentilitersmillilitersplanck_volumevoltage)Vrh   r   voltsplanck_voltage)gr   Dar&   memgugr   mmuamusgrammmusr#   poundtonnedaltonpoundsr8   	kilograms	microgram	milligram
metric_ton
micrograms
milligramsplanck_massmilli_mass_unitatomic_mass_unitr:   atomic_mass_constant)r   r    r<   r%   r=   r#   rL   rM   rN   test_find_unitr    s    Y#NNNNW!ccccV bbbbT? E E E E T2X"CCCCVRZ $EEEETQY#CCCCTQY $7 7 7 7 Y#PPPPU  N N N NrM   c                  .   [        S5      n [        U [        -  U 5      [        :X  d   e[        U S-  [        S-  -  U 5      SU S-  -  [        S-  -  :X  d   e[        [        [        5      S:X  d   e[        [        S-  [        5      S[        -  :X  d   eg )Nxrn   rl   r   )r
   r   r)   )r  s    rN   test_Quantity_derivativer  -  s    A%u$$$1UAXq!Qq!tVE1H_444u"""q% AeG+++rM   c            	         [        S5      n [        S5      n[        R                  " U [        [        S-  -  [
        -  [        -  5        [        R                  " U[        [        -  [
        -  [        S-  [        -  -  5        X-   (       d   eX-   n[        [        R                  " U5      5      n[        R                  " 5       R                  U5      [        S[        S[
        S[        S0:X  d   eg )NrT   q2rl   r   r   )rF   rG   set_quantity_dimensionr=   r@   r?   r>   rA   r;   r   r   r   rB   )rT   r  rW   r   s       rN   test_quantity_postprocessingr"  5  s    	$B	$Bb&1"4["@"EFb&/+"=vqy~"NO7N7
A	2**1-	.B""$AA"EaQb	J   rM   c                  *   S[        S5      4[        R                  " S5      :X  d   eS[        4[        R                  " [        [
        -   5      :X  d   eS[        [        -  4[        R                  " [        [        -  S[
        -  S[        -  -  -   5      :X  d   e[        S5      u  pXS-  -   [        4[        R                  " U [        -  U[        -  -   5      :X  d   e[        S	5      n[        R                  " U[        [        -  5        [!        U5      * nS[        [        -  4[        R                  " [#        U5      5      :X  d   e[        S
5      n[        S5      nUR%                  ['        SS5      [        [        -  5        UR%                  S[        [        -  5        [)        US-  U-
  5      n['        SS5      [        [        -  4[        R                  " U5      :X  d   e['        SS5      [        -  [        -  U-  S-
  nS['        SS5      -   * [        S5      4[        R                  " U5      :X  d   eXEU-  -  n['        SS5      ['        SS5      -  [        [        -  ['        SS5      -  4[        R                  " U5      :X  d   eg )Nro   r   i  rl   $   rQ   zx yr   cHr   r   rn   rb   r   i  )r;   rG   r   r=   r)   r'   r>   r.   r$   r
   r(   r   rF   r!  r   r   r   r   rV   r   r   )r  yr%  pHr   r   rX   s          rN   test_factor_and_dimensionr(  G  sY   )A,2#C#CD#IIII&>R==ebjIIIIvd{r??fr"ubg& ( ( ( ( 5>DA#Iv""B"B	!a
l#    
$Bb"5f"<=
b'Bv))*b.N.NB/    FDFD))(1a.%,G))!U6\:tAv}DQNF4K(
((./ / / Aq>& &t+d2DXa^#$il3
((./ / / t)Da^hq!n,vd{Xa^.KL
((./ / /rM   c                     [        S5      n [        S5      n[        S5      nU R                  S[        5        UR                  S[        5        UR                  S[        5        [        S5      n[        S5      n[        S5      nU" X45      R                  X45      nUR                  U" X45      XXU05      n[        R                  " U5      [        R                  " X-  U-  5      s=:X  a  [        S	5      [        S
5      S-  -  :X  d   e   e[        R                  " U5      [        R                  " X-  U-  5      s=:X  a  S[        [        S-  -  4:X  d   e   eg )Nr   r   t1r$  r   r  r&  fr=   r>   rl   rQ   )rF   rV   r'   r$   r.   r	   r   r   subsrG   r   r   r=   r>   )r   r   r*  r  r&  r+  dfdxdl_dts           rN   #test_dimensional_expr_of_derivativer/  l  s=   AA	$B&&r2.&&q$/''62sAsAAQ7<<DIIqwaB/0E""5)

++x**+ + + + + ++E2
((4	VD!G^    rM   c                  v   [        S5      n [        S5      nU R                  S[        [        -  5        UR                  S[        [        -  5        [        R
                  " [        U 5      5      [        [        R
                  " U 5      5      :X  d   e[        R
                  " [        X-  5      5      S:X  d   eg )Nr   r   r   )rF   rV   r)   r.   rG   r   r   )r   r   s     rN   'test_get_dimensional_expr_with_functionr1    s    FDFD))!U6\:))!U6\:""3t9-B##D)*+ + +""3ty>2a777rM   c                  0   [        [        [        5      S[        -  :X  d   e[        [        [        5      S[        -  :X  d   e[        [        [        5      S[        -  :X  d   e[        [
        [        5      S[        -  :X  d   e[        [        [        5      S[        -  :X  d   e[        [        [        5      S[        -  :X  d   e[        R                   " [        5      S[        -  :X  d   e[        R                   " [        5      S[        -  :X  d   eS	[        -  [        -  n [        U [        5      S
[        -  [        -  :X  d   e[        U [        5      S[        -  [        -  :X  d   e[        U [        [        /5      S[        -  [        -  :X  d   eg )Ni   i   i   @l        l           l            i       rQ   i (  iX  i `	 )r   r2   r1   r3   r4   r5   r6   r7   r0   r$   r+   )as    rN   test_binary_informationr5    s;   h%d222h%555h%555h%555h%555h%555s#vcz111??31S5(((
8DAa%*T/111a CL$7777a$(F4K,>>>>rM   c                     [        S5      n [        S5      n[        S5      nUR                  SU 5        UR                  [        R                  S-  U5        [        S5      n[        S5      n[        S5      nUR                  [        R                  S-  U5        UR                  S	U5        [	        X-  [
        -  X%[        /5      [        R                  S-  S
-  S-  U-  U-  [        -  :X  d   eg )N
good_gradekilo_good_gradecenti_good_graderc   i charity_pointsmilli_charity_pointsmissions   ix rQ   )rF   rV   r   rp   r   r*   r   )r7  r8  r9  r:  r;  r<  s         rN   -test_conversion_with_2_nonstandard_dimensionsr>    s    ,'J01O 2344T:F55aeeEk?S./N#$:;
#H99!%%*nU--c>B,Z7	Z0 
(	#b	(+;	;H	DZ	OP P PrM   c                  `   [        S5      u  pnX-  nU [        [        S-  -  [        S-  -  U[        0nUR	                  U5      [        S-  [        S-  -  :X  d   eX!-  nU[
        [        S-  -  [        S-  -  U[        0nUR	                  U5      [
        [        -  [        S-  -  :X  d   eg )Nzenergy mass forcerl   )r
   r8   r)   r.   r,  r9   )rA   rB   forceexpr1unitsexpr2s         rN   test_eval_subsrD    s    !"56F%KEXeQh&vqy0$AE::eq 2222JE)(A+5eQh>XNE::e 6x ?q HHHHrM   c                     [        [        5      [        S5      -
  R                  5       [        [        S-  5      :X  d   e[        [        5      [        [        5      -
  R                  5       [        S5      * :X  d   e[	        SSS9n [        [        5      [        U 5      -
  R                  5       [        [        U -  5      :X  d   eg )Nrl   r   pT)positive)r   r%   r   r"   r
   )rF  s    rN   test_issue_14932rH    s    IA((*c$q&k999ID	!++-#b'999d#AIA((*c$q&k999rM   c                  Z   SSK Jn Jn  SSKJn  [        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   e[        U 5      R                  b   eU" [        U 5      [        U5      5      c   e[        S5      nX-   nUR                  (       a  [        UR                  5      X1:X  d   eU S-   nUR                  (       a  [        UR                  5      U S1:X  d   eg )Nr   )r"   r%   )Eqr  r   )sympy.physics.unitsr"   r%   sympy.core.relationalrJ  r   is_zerois_positiveis_nonnegativeis_negativeis_algebraicis_rationalr	   is_Addsetrg   )r"   r%   rJ  r  es        rN   test_issue_14547rV    s    /(t9$$$t9  (((t9##+++t9  (((t9!!)))t9  (((c$iT#///sAA88AFFy000qA88AFFay0000rM   c                  X   [         R                  " S5        [        S5      n [        R                  " U [
        5        [        R                  " U S5        [        S5      n[        R                  " U[
        5        [        R                  " US5        X-  n[        R                  " U5        g )Nerrorr~   r   bad_exp)warningssimplefilterrF   rG   r!  r=   set_quantity_scale_factorr   )r~   rY  rX   s      rN   test_issue_22164r]    sz    '"	$Bb&)  Q'y!Ggv.  !,=D $$T*rM   c                      SSK Jn JnJn  SSKJn  U R                  U5      SU-  :X  d   eUR                  [        5      [        S0:X  d   eUR                  S:X  d   eg )Nr   )r  r
  r  )	dimsys_SIi@B rl   g/K ;)rK  r  r
  r  sympy.physics.units.systems.sir_  r   r   r   r=   rd   )r  r
  r  r_  s       rN   test_issue_22819ra    sX    338D!WT\11111$7FA;FFF??2222rM   c                  z   SSK Jn   SSKJn  [	        S5      n[	        S5      n[
        R                  " X!5        [
        R                  " X15        UR                  S[        5        UR                  S[        5        S[        US-  US-  -  5      -   n[
        R                  " U5      SU -   [        S5      4:X  d   eg )Nr   E)rA   r`   rh   r   rl   )sympy.core.numbersrd  rK  rA   rF   rG   r!  rV   r   r   r   r;   )rd  rA   r`   rh   rX   s        rN   test_issue_20288rf    s    $*AAa(a(&&q%0&&q%0s1a419~D++D1a!eYq\5JJJJrM   c                  h   SSK Jn   SSKJnJnJnJnJnJn  [        S5      n[        S5      n[        S5      n	[        R                  " Xq5        [        R                  " X5        [        R                  " X5        UR                  SU5        UR                  SU5        U	R                  SU5        XU-  -  n
[        R                  " U
5      S   n[        R                  " 5       R                  U5      (       d   eS[!        U
5      -   n[        R                  " U5      SU -   [#        S5      4:X  d   eg )Nr   rc  )	impedancecapacitancer>   r   faradr.   Rr   Tr   )re  rd  rK  rh  ri  r>   r   rj  r.   rF   rG   r!  rV   r   r   is_dimensionlessr   r;   )rd  rh  ri  r>   r   rj  r.   rk  r   rl  rX   dimexp_exprs                rN   test_issue_24062rp    s    $TTAAAa+a-a&&&q#.&&q%0&&q&1A;D

*
*4
0
3C""$55c::::3t9}H++H5!a%19NNNNrM   c                     SSK Jn JnJnJnJn  [        S5      n[        R                  " XQ5        [        R                  " USU-  U-  5        [        S5      n[        R                  " Xb5        [        R                  " USU-  US-  -  5        [        S5      n[        R                  " Xp5        [        R                  " USU-  5        Xg-  U-   n[        R                  " U5        g )Nr   )r>   velocityaccelerationr.   r)   V1r   A1rl   T1)rK  r>   rr  rs  r.   r)   rF   rG   r!  r\  r   )	r>   rr  rs  r.   r)   rt  ru  rv  rX   s	            rN   test_issue_24211rw    s    OO	$Bb+  QY%78	$Bb/  QY%:;	$Bb'  QZ052:D$$T*rM   c                     [         R                  (       a   e[        R                  (       a   e[        R                  (       a   e[        R                  (       a   e[
        R                  (       a   e[        R                  (       a   e[        R                  (       d   e[        R                  (       d   e[        R                  (       d   e[        R                  (       d   eg r   )r)   is_prefixedr   r!   r.   r   r   r   r   r8   r6   rL   rM   rN   test_prefixed_propertyrz  #  s            !!!!!!!!    rM   c                  \   SSK Jn   [        U 5       H  n[        X5      n[	        U[
        5      (       d  M%  UR                  S5      (       d  M=  [	        U[        5      (       d   U S[        U5       35       eUR                  (       a  Mz   U S35       e   [        [        [        [        [        4 HH  n[	        U[        5      (       d   U S[        U5       35       eUR                  (       a  M@   U S35       e   [        R                  (       a   e[         R                  (       a   eg )Nr   )definitions	_constantz" must be PhysicalConstant, but is z4 is not marked as physics constant when it should be)rK  r|  dirgetattrrr   rF   endswithrE   typeis_physical_constantr9   r   r   r/   r   r)   r   )r|  rq   quantityconsts       rN   test_physics_constantr  /  s   /K ;-(H--==%%h(899zhZGijnowjxiy;zz9000oTF:n2oo0 ! )*<>QSactu%!122mug=_`dej`k_l4mm2)))ieW4h+ii) v )))))))))rM   )zrZ  sympy.core.addr   sympy.core.functionr   r   re  r   r   sympy.core.singletonr   sympy.core.symbolr	   r
   $sympy.functions.elementary.complexesr   &sympy.functions.elementary.exponentialr   r   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   sympy.integrals.integralsr   rK  r   r   r   r   r   r   r   r   r   r   r   r   sympy.physics.units.definitionsr   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   5sympy.physics.units.definitions.dimension_definitionsr;   r<   r=   r>   r?   r@   rA   rB   sympy.physics.units.prefixesrC   rD   sympy.physics.units.quantitiesrE   rF   sympy.physics.units.systemsrG   sympy.testing.pytestrH   rI   rO   rR   rZ   ri   rt   rx   r   r   r   r   r   r   r   r   r   r  r  r"  r(  r/  r1  r5  r>  rD  rH  rV  r]  ra  rf  rp  rw  rz  r  rL   rM   rN   <module>r     s7     0 1 " / 4 = 9 8 /& & & &: : : : : : : :   8 E * 'SM! $"4", -#,G&6'r8,@K!N6,$"/J(8?$P*I:1,+ 3
KO(+"
 *rM   