
    g2                        d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZmZ d dlmZ d dlmZ d dlmZmZ d d	lmZmZ d d
lmZmZ d dlmZmZ d dlmZ d dlm Z  d dl!m"Z"m#Z# d dl$m%Z% d dl&m'Z' d dl(m)Z) d dl*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZL d dlMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZW d dlXmYZYmZZZm[Z[m\Z\ d dl]m^Z^ d dlm_Z_ d dl`maZa d dlmbZb d dlcmdZd d Zed Zfd Zgd Zhd Zid Zjd  Zkd! Zld" Zmd# Znd$ Zod% Zpd& Zqd' Zrd( Zse[d)             Ztd* Zud+ Zvd, Zwd- Zxd. Zyd/ Zzd0 Z{d1 Z|d2 Z}d3 Z~d4 Zd5 Zd6 Zd7 Zd8 Zd9 Zd: Zd; Zd< Zd= Zd>S )?    )Sum)Basic)Tuple)Lambda)Rationalnanoopi)Eq)S)Symbolsymbols)FallingFactorialbinomial)explog)cossin)
DiracDelta)	integrate)AndOr)Matrix)Interval)Indexed)"DieNormalExponentialFiniteRVPEHvariancedensitygivenindependent	dependentwherepspaceGaussianUnitaryEnsemblerandom_symbolssample	Geometricfactorial_momentBinomialHypergeometricDiscreteUniformPoissoncharacteristic_functionmoment_generating_functionBernoulliProcessVarianceExpectationProbability
Covariance
covariancecmomentmomentmedian)
IndependentProductPSpacers_swapDensityNamedArgsMixinRandomSymbolsample_iterPSpace	is_randomRandomIndexedSymbolRandomMatrixSymbol)raisesskipXFAILwarns_deprecated_sympy)import_module)comp)BernoulliDistribution)Dummy)	Piecewisec                     t          d          t          d          }} t          ddd          }t          |dz  dk              j        t	          dd          k    sJ t          |dz  dk                                              t	          dd                              |j                  k    sJ t          t          | |k    |dk                                                        t          t          | j        d	          t          |j        d
                    k    sJ t          t          | dk               j                  dk    sJ dt          | dk               j        v sJ t          ddd          t          ddd          }} t          t          | dz  dk    | dk                        j        t	          dd          k    sJ t          | t          | dz  dk    | dk                        }|j        j        j        t	          dd          k    sJ |j        j                                        t          d| j        k    | j        dz  dk    t           | j        k     | j        t          k               k    sJ t          t                     5  t          | | dz             }d d d            d S # 1 swxY w Y   d S )NXYZr                     )r   r   r(   setr   
as_booleanas_relationalsymbolr   r   lenr%   r)   domainr	   rH   	TypeError)rR   rS   rT   XXs       U/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/stats/tests/test_rv.py
test_wherere   !   s   s88SXXqAsAqAA8B??2222A&&((HROO,I,I!(,S,SSSSSQUAE""##..00C
18QAHa5* 5* * * * * uQU||  A%%%%a!e     #q!fS!Q//qAQTQYQ''((,A>>>>	q#adaia((	)	)B98Aq>>11119&&((AM18Q;!+bS18^QX]KKL L L L 
			  1a!e__                 s   J77J;>J;c                     t          ddd          t          ddd          }} t          t          d| z  dz                       | hk    sJ t          t          d| z  |z                       | |hk    sJ t          t          d| z  |j        z                       | hk    sJ t          t          d                    t                      k    sJ d S )NrR   r   rU   rS   rV   )r   r\   r+   r_   rR   rS   s     rd   test_random_symbolsrh   8   s    #q!fS!Q//qA~acAg&&''A3....~acAg&&''Aq61111~acAHn--..1#5555~a  !!SUU******    c            
         ddl m}  t          ddd          }t          dg d          }t	          dd          }t          d	          }t          |t          |dz   dz                      }t          |t          d
|z  | z            dz  t          d|z  | z            dz  z   t          || z            dz  z             }t          |t          dt          || z            z  dz
                      }t          |          	                    |          sJ t          |          	                    |          sJ t          |          	                    |          sJ d S )Nr   )IrR   rU   rS   rU   rV      rT   rV   _trm   r[   )
sympy.core.numbersrk   r   r1   r2   r   r   r   r3   dummy_eq)rk   rR   rS   rT   tr    QRs           rd   test_characteristic_functionrt   A   sP   $$$$$$s1QAWWW%%AQAAq#q!teAg,,Aq#ac!e**Q,QqSUA-AaC
:;;Aq#a#ac((lQ&''((A #1%%..q11111"1%%..q11111"1%%..q1111111ri   c            	         t          ddd          } t          dg d          }t          dd          }t          d          }t	          |t          |dz  dz                      }t	          |t          d	|z            d
z  t          d|z            d
z  z   t          |          d
z  z             }t	          |t          dt          |          z  dz
                      }t          |                               |          sJ t          |                              |          sJ t          |                              |          sJ d S )NrR   r   rU   rS   rl   rT   rV   rn   rm   r[   )r   r1   r2   r   r   r   r4   rp   )rR   rS   rT   rq   r    rr   rs   s          rd   test_moment_generating_functionrv   R   s+   s1QAWWW%%AQAAq#ad1f++Aq3qs88A:AaC
*SVVAX577Aq#a#a&&j1n%%&&A &a((11!44444%a((11!44444%a((11!4444444ri   c                     t          ddd          } t          dg d          }t          dd          }t          d          }|st	          d	           | dz  d
z   }t          |          }|dz  d|z  z   dz   }t          |          }|d
z  dz   }t          |          }	d }
 |
|          sJ  |
|          sJ  |
|	          sJ d S )NrR   r   rU   rS   rl   rT   rV   scipy#Scipy is not installed. Abort testsr[   rZ   rX   c                     t          | d          rLt          | d          st          | d          r,t          | j                  r|                                 | u rdS dS )N__iter__next__next__TF)hasattrcallabler{   )objs    rd   is_iteratorz%test_sample_iter.<locals>.is_iterators   sm    C$$		S&!!		 C$$		 S\""			
 LLNNc!!45ri   )r   r1   r2   rL   rI   rC   )rR   rS   rT   rx   expriteratorexpr2	iterator2expr3	iterator3r   s              rd   test_sample_iterr   a   s   s1QAYYY''AQA'""E 42333a4!8D4  HqD1Q3JNEE""IqD1HEE""I
 
 
 ;x     ;y!!!!!;y!!!!!!!ri   c                     t          ddd          t          ddd          }} t          d          t          t          d            t          t          fd           t	          |           | j        k    sJ t	          d| z  dz             | j        k    sJ t	          d| z  |z             t          |j        | j                  k    sJ d S )	NrR   r   rU   rS   xc                       t          d          S )N   r)    ri   rd   <lambda>ztest_pspace.<locals>.<lambda>   s    ve}} ri   c                  *    t           dk               S NrU   r   r   s   rd   r   ztest_pspace.<locals>.<lambda>   s    va!e}} ri   rV   )r   r   rH   
ValueErrorr)   r>   )rR   rS   r   s     @rd   test_pspacer      s    #q!fS!Q//qAsA
:,,---
:,,,,---!99    !A#'??ah&&&&!A#'??6qxJJJJJJJJri   c                     t          ddd          } t          dd          }t          ddd          }t          ddd          }d| z  |z   }|                    t          | |f||f                    d|z  |z   k    sJ d S )Nr   r   rU   yrV   r[   )r   r   subsr?   )rR   rS   rc   YYr   s        rd   test_rs_swapr      s    sAqACA	Q		B	Q		BQ37D99WaVb"X..//1R4"9<<<<<<ri   c                      t          ddd          } t          ddd          }| j        |j        k    sJ | |k    sJ | j        | j        j        k    sJ t          ddd          } t          ddd          } d S )Nr   r   rU   rV   lambdar   )r   r_   namerg   s     rd   test_RandomSymbolr      s    sAqAsAqA8qx66666QX]""""xAAxAAAAri   c                  \    t          ddd          } d| z                      |           sJ d S )Nr   r   rU   rV   )r   diffrR   s    rd   test_RandomSymbol_diffr      s3    sAqAaC::a==ri   c                  p    t          t          d                    } | j        t                      k    sJ d S )Nr   )rB   r   r)   rD   r   s    rd   test_random_symbol_no_pspacer      s2    VC[[!!A8vxxri   c                       t          ddd           t          ddd          t          t           fd           d S )Nr   r   rU   rV   c                  *    t           k              S Nr    rg   s   rd   r   ztest_overlap.<locals>.<lambda>   s    qQxx ri   )r   rH   r   rg   s   @@rd   test_overlapr      sI    sAqAsAqA
:'''''(((((ri   c                      t          ddd          } t          ddd          }| j        }|j        }t          | |z             t          ||          k    sJ t          | |z             t          ||          k    sJ d S NrR   r   rU   rS   )r   r)   r>   )rR   rS   pxpys       rd   test_IndependentProductPSpacer      s    sAqAsAqA	
B	
B!a%==4R<<<<<<!a%==4R<<<<<<<<ri   c                  0    t          d          dk    sJ d S )NrZ   )r!   r   ri   rd   test_Er      s    Q441999999ri   c                     t          ddd          } t          dd          }t          dd          }t          | | dk              t	          d	           d	z  t
          j        z   t	          t                    d	z  z   k    sJ t          ||d	k              t	          d	          k    sJ t          t          |          	                                
                    d	          d
          sJ d S )NrR   r   rU   DrX   )sidesG      ?rV   g=
ףp=?)r   r   r-   r"   r   r   Halfr
   rM   evalfround)rR   r   r   s      rd   test_Hr      s    sAqACA#sAQA;;3q66'!)af,s2wwqy88888QA;;#a&&    !

""1%%t,,,,,,,ri   c                     t          dd          } t          ddd          t          dd          t          d	          }|st	          d
           t          |           dv sJ t          t          | z             t                    sJ t          | z   dk    dk     d          j	        sJ t          | z   d          j	        sJ t          | dz  z   d          j	        sJ t          | z   dz  d          j	        sJ t          | z   d          j	        sJ t          t          fd           t          t                    dk    d          dk    sJ t          t                    dk    t                    dk     d          dk    sJ t!          d t#          | d          D                       sJ t!          d t#          | | dk    d          D                       sJ t          d          }|st	          d           t          t          |           |j        |j        f          sJ t          t                    |j                  sJ t          t          | d          |j                  sJ t-                      5  t          | d           d d d            d S # 1 swxY w Y   d S )NrR   rY   rS   r   rU   zTintegerrx   ry   )rU   rV   r[   rX   rZ   rY   
   
numsamplesrV   c                  .    t           k    d          S )NrZ   r   r   )rS   r   s   rd   r   ztest_Sample.<locals>.<lambda>   s    aA!444 ri   g      ?c              3   :   K   | ]}|t          d d          v V  dS )rU   rm   Nrange.0is     rd   	<genexpr>ztest_Sample.<locals>.<genexpr>   s/      CCAqE!QKKCCCCCCri   c              3   :   K   | ]}|t          d d          v V  dS )rX   rm   Nr   r   s     rd   r   ztest_Sample.<locals>.<genexpr>   s/      HHAqE!QKKHHHHHHri   r[   numpyz#Numpy is not installed. Abort tests)size)r   r   r   rL   rI   r,   
isinstancefloatr    	is_numberr!   r#   rH   rb   r   r   allr$   int32int64float64ndarrayrK   )rR   rx   r   rS   r   s      @@rd   test_Sampler      s0   CAsAqAsD!!!A'""E 42333!99*****fQUmmU+++++QUQYA"---7777QUr""",,,,QTAX"%%%////a!eaZB'''1111AEb)))3333
944444555SVVq[R(((C////SVVq[#a&&1*444;;;;CCr)B)B)BCCCCCCCCHHAaCB)G)G)GHHHHHHHH'""E 42333fQii%+u{!;<<<<<fQii/////fQQ'''77777		!	!    qQ                                   s   J;;J?J?c                      t          d          } | st          d           t          ddd          }t          dd          }t	          t          d||z  z  |dt          f          |d	k    d
          j        sJ d S )Nrx   ry   rS   r   rU   r   Tr   rV   r[   r   )rL   rI   r   r   r!   r   r	   r   )rx   rS   r   s      rd   test_samplingEr      s    '""E 42333sAqAsD!!!AS1a4!Q$$a!e:::DDDDDDri   c                      t          ddd          } t          ddd          }t          | d          }t          | |dk              }| |cxk    r|k    sn J d S )NrR   r   rU   rS   TrV   )r   r%   )rR   rS   ABs       rd   
test_givenr      sa    sAqAsAqAaAaQA;;;;Q;;;;;;;;ri   c                     t          dd          } t          ddt          j                  }t	          dddd          }t          | d          dk    sJ t          |d          t          j        k    sJ t          |d          t          dd          k    sJ t          d          \  }}}}t          dd|          }t	          dd	dd          }t          ||          |dz  t          d|          z  d|z  d|z
  z  t          d|          z  z   d|z
  dz  t          d
|          z  z   k    sJ t          ||          dt          d
|          z  dz  dt          d|          z  dz  z   t          d|          dz  z   k    sJ d S )NrR   rV   rS   rT   rX   rU   r[   zx y z lr   r   rm      )	r2   r/   r   r   r0   r.   r   r   r   )rR   rS   rT   r   r   r   ls          rd   test_factorial_momentr     s   QAa  AsAq!$$AAq!!Q&&&&Aq!!QV++++Aq!!Xa^^3333##JAq!QaAsB1%%AAq!!QT*:	1+ + &!QU,Q222&367!eaZQ""6#&# # # # # Aq!!Q'71'='=%=
&1%%%b(&)+;Aq+A+A"+D&E E E E E E Eri   c                     t          d          t          d          }} t          | d|z            sJ t          | d|z            rJ t          ddd          t          ddd          }} t          | |          sJ t          | d| z            sJ t	          t          | |          t          | |z   d                    \  }}t          ||          sJ d S )NrR   rS   rV   r   rU   r[   )r   r&   r'   r   r%   r   r   rR   rS   rc   r   s       rd   test_dependencer     s    s88SXXqAq!A#AaC     #q!fS!Q//qAq!Q! 5A;;1q5!--FBRri   c                      t          d          t          d          }} t          | || z             sJ t          t          | |          | |z   dk              \  }}t          ||          sJ d S )NrR   rS   rZ   )r   r'   r%   r   r   s       rd   test_dependent_finiter      sr    s88SXXqA QA5A;;A	**FBRri   c                  0   t          ddd          t          ddd          }} t          dd          }t          dd          }t          | |z
  t          | |z   |                    }t	           ||          |t
           t
          f          dk    sJ d S )	NrR   r   rU   rS   r   T)realr   )r   r   r$   r   r   r	   )rR   rS   r   r   denss        rd   test_normalityr   *  s    #q!fS!Q//qAsAsA1q5"QUA,,''DTT!WWq2#rl++q000000ri   c                      t          dd          } t          |           }|                                t          |           k    sJ d S )NrR   rY   )r   r@   doitr$   )rR   ds     rd   test_Densityr   3  s?    CA

A6688wqzz!!!!!!ri   c                  N    G d dt           t                    }  | t          d          t          d                    j        dk    sJ j        dk    sJ t          t          fd            G d dt           t                    t          t          fd           d S )	Nc                       e Zd ZdZdS ) test_NamedArgsMixin.<locals>.Foo)foobarN)__name__
__module____qualname__	_argnamesr   ri   rd   Foor   9  s         			ri   r   rU   rV   c                       j         S r   )baz)as   rd   r   z%test_NamedArgsMixin.<locals>.<lambda>A  s	    15 ri   c                       e Zd ZdS ) test_NamedArgsMixin.<locals>.BarN)r   r   r   r   ri   rd   Barr   C  s        ri   r   c                  Z      t          d          t          d                    j        S NrU   rV   )r   r   )r   s   rd   r   z%test_NamedArgsMixin.<locals>.<lambda>F  s     33qttQqTT??#6 ri   )r   rA   r   r   r   rH   AttributeError)r   r   r   s    @@rd   test_NamedArgsMixinr   8  s    ! ! ! ! !e^ ! ! ! 	AaDD!A$$A5A::::5A::::
>====)))    e^    >666677777ri   c                       t          d          d          dk    sJ  t          d          d          t          d          k    sJ d S )Nr[   rV   r   )r$   r   r   ri   rd   test_density_constantr   H  sL    71::a==A71::a==JqMM))))))ri   c                  (   t          d          dk    sJ t          dd          dk    sJ t          dd          dk    sJ t          d          } t          |           dk    sJ t          | d          dk    sJ t          | d          dk    sJ d S )Nr[   r   rX   r   r   rU   )r#   r;   r   r   s    rd   test_cmoment_constantr  L  s    A;;!1a==A1a==AsAA;;!1b>>Q1a==Ari   c                      t          dd          dk    sJ t          dd          dk    sJ t          dd          dk    sJ t          d          } t          | d          | dz  k    sJ d S )Nr[   r   rU   rV   	   r   )r<   r   r   s    rd   test_moment_constantr  U  s{    !Q<<1!Q<<1!Q<<1sA!Q<<1a4ri   c                  x    t          d          dk    sJ t          d          } t          |           | k    sJ d S )Nr[   r   )r=   r   r   s    rd   test_median_constantr  \  s7    !99>>>>sA!99>>>>>>ri   c                  :    t          ddd          } | j        sJ d S )Nr   r   rU   )r   is_realr   s    rd   	test_realr
  a  s'    sAqA9ri   c                      t          dd           t           t          k               dk    sJ t           t          k              dk    sJ t           dk      t          k              dk    sJ t           t          k      t          k              dk    sJ t           t          k      dk              dk    sJ t           dk      dk              dk    sJ t          t          d            t          t           fd           d S )NrR   r[   rU   r   rV   c                       t          d          S r   r   r   ri   rd   r   z"test_issue_10052.<locals>.<lambda>n  s    qtt ri   c                  ,    t           dk     d          S r   r   r   s   rd   r   z"test_issue_10052.<locals>.<lambda>o  s    qQ{{ ri   )r   r    r	   rH   r   r   s   @rd   test_issue_10052r  f  s    CAQV99>>>>QV99>>>>QUAFq    QVQV!!!!QVQUq    QUAFq    
:||$$$
:****+++++ri   c                      ddd} t          d|           }t          |          dk    sJ t          |dk              dk    sJ d S )Nr   )r   rU   rR   rV   r   )r   r!   r    )r$   rR   s     rd   test_issue_11934r  q  sJ    nnGgAQ443;;;;a!e99>>>>>>ri   c                      t          dd          } t          | | k              dk    sJ t          | | k              dk    sJ t          | | dz   k              dk    sJ d S )NrR   rX   rU   r   )r   r    r   s    rd   test_issue_8129r  w  s^    CAQ!V99>>>>QU88q====Q1W::??????ri   c                     t          ddd          } t          ddd          }t          | dk    |           }t          |dk     |           }t          | |z   dk    |           }|t          | |z   dk    |           k    sJ |t          t          j        t          j        t          j                  k    sJ |t          j        k    sJ d S r   )r   r    rN   r   r   ZeroOne)rR   rS   UVWs        rd   test_issue_12237r  }  s    sAqAsAqA	!a%A	!a%A	!a%!)QA!a%!)Q%afafae<<<<<<;;;;;;ri   c                  8   t          ddd          } t          ddd          }t          d          \  }}t          dd          }t          dd	          }t	          |          rJ t	          ||z             rJ t	          ||z            rJ t	          t          |dz  |dz  g                    rJ t	          |           sJ t	          | dz  |z             sJ t	          ||dz  z             sJ t	          |d
k              sJ t	          |d         dk               sJ t	          |          sJ t	          | |z  |d         z            sJ t	          t          | |d         g||gg                    sJ t	          t          | d                    sJ d S )NrR   r   rU   rS   za, br  rV   r   g?rZ   r[   rX   )r   r   r*   r5   rE   r   r   )rR   rS   r   br   r   s         rd   test_is_randomr    s   sAqAsAqA6??DAqQ''Ac""A||QQAq!t--.....Q<<QTAXQAXQUQqTAXQ<<QUQqT\"""""Va1YA/0011111R1XXri   c                  T   t          d          } t          |           }t          d          }t          ddd          }t          ddd          }t          t	          dd                    }t          |          t                      k    sJ t          |          t                      k    sJ t          |          t                      k    sJ t          |          t          |          k    sJ t          |dk              t          |dk              k    sJ t          |          t          |          k    sJ t          |          t          |          k    sJ t          ||          t          ||          k    sJ t          ||          t          ||          k    sJ d S )	Nr   rS   rT   rV   rU   r  RIr[   )r   rB   rG   rF   r   r)   rD   r!   r7   r    r8   r#   r6   r:   r9   )r   rR   rS   rT   r  r  s         rd   test_issue_12283r    s}   AQASA31%%A31%%A	WT1--	.	.B!99    "::!!!!!99    Q44;q>>!!!!QU88{1q5))))))A;;(1++%%%%B<<8B<<''''az!Q//////az!Q////////ri   c                     t          dd          } t          ddd          }t          t          | d                    t	          d          dz  k    sJ t          t          |d                    dk    sJ t          t          | dk    | dk                         dk    sJ t          t          | dk    | dk                        t	          d          dz  k    sJ d S )NrR   rY   rS   r   rU   rV   r[   )r   r   r    r   r   r   r   rg   s     rd   test_issue_6810r!    s    CAsAqAR1XX;;!A$$q&    R1XX;;!RAq1u!####SQA1Q446))))))ri   c                     t          d          \  } }t          d| |          }t          dd          }t          t	          ||z   d|z
  | | z   z  z  t          ||z  d|z
  | | z   z  z  t          | |          z            z  t          | |          z  |dk    || k    z  ft          df          |d| f          }|                    t          |                    sJ d S )Nzn pr   kTr   rU   r   )
r   r/   rO   r   rP   r   r   r   rp   r"   )npr   r#  eqs        rd   test_issue_20286r'    s"   5>>DAqaAcT"""A	YAq1uQ//AqD!a%A269J4J8TUWX>>4Y0Z0ZZ[cdegh[i[iilmqrlrwx|}w}k~  CF  HL  BM  N  N  QR  TU  WX  PY  
Z  
ZB;;qttri   N)sympy.concrete.summationsr   sympy.core.basicr   sympy.core.containersr   sympy.core.functionr   ro   r   r   r	   r
   sympy.core.relationalr   sympy.core.singletonr   sympy.core.symbolr   r   (sympy.functions.combinatorial.factorialsr   r   &sympy.functions.elementary.exponentialr   r   (sympy.functions.elementary.trigonometricr   r   'sympy.functions.special.delta_functionsr   sympy.integrals.integralsr   sympy.logic.boolalgr   r   sympy.matrices.denser   sympy.sets.setsr   sympy.tensor.indexedr   sympy.statsr   r   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:   r;   r<   r=   sympy.stats.rvr>   r?   r@   rA   rB   rC   rD   rE   rF   rG   sympy.testing.pytestrH   rI   rJ   rK   sympy.externalrL   rM   sympy.stats.frv_typesrN   rO   $sympy.functions.elementary.piecewiserP   re   rh   rt   rv   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  r  r  r  r  r!  r'  r   ri   rd   <module>r>     s   ) ) ) ) ) ) " " " " " " ' ' ' ' ' ' & & & & & & 6 6 6 6 6 6 6 6 6 6 6 6 $ $ $ $ $ $ " " " " " " / / / / / / / / Q Q Q Q Q Q Q Q = = = = = = = = ? ? ? ? ? ? ? ? > > > > > > / / / / / / ) ) ) ) ) ) ) ) ' ' ' ' ' ' $ $ $ $ $ $ ( ( ( ( ( (                                                                       _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ L L L L L L L L L L L L ( ( ( ( ( ( # # # # # # 7 7 7 7 7 7 # # # # # # : : : : : :  .+ + +2 2 2"5 5 5" " "BK K K= = =
 
 
  
     ) ) )= = =  - - -"  "  " H E E E  E E E$    1 1 1" " "
8 8 8 * * *         
  
	, 	, 	,        (0 0 0"* * *    ri   