
     dP                     6    S SK r SS jrSS jrS rSS jrS rg)	    Nc                 $    SU-  nX -  S-  U-  n U $ )N
       )numberprecifulls      !/home/ernad/ernad/python/dekan.py
round_downr      s!    u9Dm!D(FM    c                 x   SU-  n/ nSnX::  aH  XP:  a6  UR                  [        R                  " X0-  5      U-  5        US-  nXP:  a  M6  [        U5      nU$ [	        U SU S-
  -   -  S-  5      nXP:  a<  UR                  [        R                  " X0U-
  -  U-  5      U-  5        US-  nXP:  a  M<  [        U5      nU$ )Nr   r   r      )appendmathfloor	add_roundfloat)horizdimenr   r	   outcountarisums          r
   buildr   
   s    u9D
CE~mJJtzz$,/$67QJE m n
5AO,q01F
-

4::dem4v=>EF
 - C.CJr   c                 R    SnU  H  nU[        U5      -  nM     U S==   U-  ss'   U $ )Nr   r   )r   )r   leftvalues      r
   r   r      s4    D
5!!  FdNFJr   c                 r    [        U 5      n[        X1US9nSnSnXS:  a  XdU   X   -  -  nUS-  nXS:  a  M  U$ )N)r   r   r   r   )lenr   )arrayr   r   horizonweightsr   totals          r
   maker#   %   sP    %jGG6GEE
/%,..
 / Lr   c                     U S:  a  [        [        U 5      5      $ U S:  a)  [        R                  " SU -  5      nS[        U5      -   nU$ [        S5      $ )Nr   r   z1/)strintr   ceil)r   inverseperiodss      r
   roughlyr*   /   sM    {3v;z))QZ)W%q6Mr   )r   )   r   )r   r   r   r   r#   r*   r   r   r
   <module>r,      s#    
$r   