
    9h1                         S SK r S SKrS SKrS SK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	5      rg)
    N)Caler)Krikt)Nafra)Natli)Tofde)Tritoc                       \ rS rSrSS jrS rSS jrSS/ S4S jrS/ SS4S jrS	 r	S
 r
SS jrSS jrS rS/ SS4S jrSrg)Alfit   Fc                    Xl         [        U R                   5      U l        [        U R                   5      U l        [        U R                   5      U l        [        U R                   5      U l        [        U R                   5      U l
        [        U R                   5      U l        U R                   R                  S   U l        0 U l        0 U l        U R                  S-   U l        [%        US5      (       a  UR&                  U l        g )Nalfitz/grond.json.gz
do_verbose)er   calerr   tofder   kriktr   nafrar   natlir   tritodirsfolderisdat
inkri_data
grond_fufihasattrr   )selferimpr   s      !/home/ernad/ernad/python/alfit.py__init__Alfit.__init__   s    466]
466]
466]
466]
466]
466]
ffkk'*
++(885,''#..DO    c                     U R                   S-   nSn[        R                  " U5       Hb  n[        R                  R	                  U5      SS nU R
                  R                  U5      (       a  MG  [        R                  " U5        US-  nMd     U$ )N/????-??-??.json.gzr   
      )r   globospathbasenamer   is_it_in_trainremove)r   glob_stringcount_removedfufi	issuedates        r   clear_old_issuesAlfit.clear_old_issues(   sy    kk$99IIk*D((.q4Izz((33IIdOQM + r!   c                     U R                   S-   n[        R                  " U5      nUS:X  a  [        R                  " U5        U$ [	        USS9nU$ )z-> list of alfit filesr#   randomT)reverse)r   r&   r3   shufflesorted)r   orderr,   	out_fufiss       r   r8   Alfit.out_fufis3   sK    kk$99IIk*	HNN9%9d3	r!   Nc           	      l    U R                   R                  SS9nU H  nU R                  XaUUUS9  M     g)z#-> makes update for all krikt filesr3   )r7   )r   only_papidsdo_overwriteonly_issuedateN)r   r8   update_for_krikt_fufi)r   r   r=   r;   r<   krikt_fufisr.   s          r   updateAlfit.update=   sD     jj***:D&&t3>4@6D ' F  r!   c                 X   [         R                  " U5      nUb0  U R                  R                  U5      (       d  [	        SU S35        gSnUb  Ub  Xb:w  a  gU R
                  R                  S5      (       aS  U R
                  S-   U-   S-   nU R                  R                  S   S-   U-   U-   n	U R                  R                  U5      n
OU R                  R                  S   S-   U-   U-   n	U R                  R                  U5      n
U R
                  S-   U-   U-   nOM[        R                  R                  U5      nUS	-   nU R                  R                  nUS-   U-   S
-   U-   n
US-   n	U/nU
b  UR!                  U
5        U	b  UR!                  U	5        U(       d2  [         R"                  " X5      (       d  U(       a  [	        SU-   5        U$ U(       a  [	        SU-   5        0 U l        [         R&                  " U5      U R$                  S'   U(       a  [	        SU	-   5        [        R                  R)                  U	5      (       d+  [	        SU	 S3[*        R,                  S9  [/        SU	 S35      e[         R&                  " U	5      U R$                  S'   U(       a  [	        SU
-   5        U
c  [/        SU
 S35      e[         R&                  " U
5      U R$                  S'   0 U l        / n[3        U5      S:w  a  Sn[        R                  R)                  U5      (       aZ  [         R&                  " U5      U l        U H9  nUU R0                  ;   a  M  U R5                  U5        UR!                  U5        SnM;     U(       a0  [         R6                  " XR0                  5        [	        SU 35        U$ [	        SU S35        U$ U R$                  S    H#  n0 U R0                  U'   U R5                  U5        M%     [         R6                  " XR0                  5        [	        SU-   5        0 U l        U$ )Nalfit skips  out of didspiF.json.gz/class/.alfit.json.gzr   /alfit.json.gzz.tofde/nafra.json.gzalfit doneres alfit loads kalfit does not see 
, gives upfilentr   Talfit wrote alfit left  as it was.filerget_issuedater   r*   printr   endswithr   r   r   r.   r'   r(   dirnamer   sigappenddoneredataloadisfilesysstderr	Exceptionflen
feed_papiddumpr   
krikt_fufir=   r;   r<   r   r/   jgzout_fufi
nafra_fufi
tofde_fufifudir]   in_fufisdone_papidsdo_i_need_savepapids                    r   r>   Alfit.update_for_krikt_fufiG   s    ''
3	 )B)B9)M)ML>:; ). {{##H--;;,y8;KK!VV[[1C7)CcI
!ZZ__Y7
 "VV[[1C7)CcI
!ZZ__Y7
;;,y83> 77??:.D..H**..Cc)H4s:J 00J<!OOJ'!OOJ'ELL$D$D&12O.:-.	J/		#.:-.ww~~j))'
|:>zz#1*ZHIIJ/		#.:-.1*ZHIIJ/		#{q "Nww~~h''H-(E OOE*&&u-%)N ) 

8VV,XJ/0  H:[9:YYs^EDFF5MOOE" $ 	

8VV$nx'(r!   c                 ~   U R                   S   U   nSU;   a%  US    H  nUS:X  a  M  U R                  X5        M     SU;   a@  US    H7  nSU;  a  M  U R                  R                  U5      nU R                  X5        M9     S H  nU R	                  X5        M     XR                   S   ;   aF  SU R                   S   U   ;   a0  U R                   S   U   S   nU H  nU R                  XXS   S	9  M     XR                   S   ;   a6  U R                   S   U   nU H  nUS:X  a  M  U R                  XXc   S	9  M     g g )
NrM   I rS    )STrS   rR   p)count)r`   add_fitr   process_fieldadd_split_papid_krikt)r   rt   rM   fitletterp_datat_datas          r   rh   Alfit.feed_papid   s?   IIcN5!!8v "9U(  !8vc>jj..s3 U(  &F&&u5 &IIcN"diinU++3.s3!CLL6;L? "IIcN"YYs^E*F"9Uv{;  #r!   c                     U R                   S   U   nX#;  a  gX2    HF  nU R                  R                  U5      nUR                  5        H  nU R	                  X5        M     MH     g)NrM   FT)r`   r   r   splitr~   )r   rt   r   rM   partr   s         r   r   Alfit.add_split_papid_krikt   s]    IIcN5!?ID::++D1Dzz|U( $  r!   c                     X R                   U   ;  a  X0R                   U   U'   gU R                   U   U==   U-  ss'   g)NT)rf   )r   rt   r   r}   s       r   r~   Alfit.add_fit   s>    ffUm#!&FF5M#uce#r!   c                 6   Uc  [        U R                  5      S:X  a<  SSKJn  U" U R                  5      U l        U R                  R                  5       U l        XR                  ;  a  [        SU-   S-   [        R                  S9  g U R                  U   nX R                  ;  a  U R                  S-   U-   S-   n[        R                  R                  U5      (       d  [        SU-   [        R                  S9  g U R                  (       a  [        S	U S
3SSS9  [        R
                  " U5      U R                  U'   U R                  (       a
  [        SSS9  XR                  U   ;  a  [        SU SU 3[        R                  S9  g U R                  U   U   $ )Nr   )Inkrizalfit see no z in your inkri datarP   rG   rE   rN   rL   z  ... rx   T)endflushdone)r   zalfit has no data for z in )rg   r   inkrir   r   ra   rZ   rc   rd   r   r   r'   r(   rb   r   rX   )r   rt   r/   r   r.   s        r   fetchAlfit.fetch   sL   4??#q('"466]
"&**//"3OO+o-0EE::'.IJJ&;;$y0:=D77>>$''+d2::'TF&1rF$)JJt$4DJJy!fD)

9--*5'i[Azz#zz)$U++r!   c                 h    XR                   ;  a  gU R                   U	 [        R                  " 5         g)NFT)r   gccollect)r   r/   s     r   destroyAlfit.destroy   s'    JJ&JJy!


r!   c                 L   [         R                  " U5      nU R                  R                  U5      (       d  [	        SU S35        gSnUb  Ub  Xb:w  a  gU R
                  R                  S5      (       aS  U R
                  S-   U-   S-   nU R                  R                  S   S-   U-   U-   n	U R                  R                  U5      n
OU R                  R                  S   S-   U-   U-   n	U R                  R                  U5      n
U R
                  S-   U-   U-   nOJ[        R                  R                  U5      nUS	-   nU R                  R                  nUS
-   U-   U-   n
US-   n	U/nU
b  UR!                  U
5        U	b  UR!                  U	5        U(       d2  [         R"                  " X5      (       d  U(       a  [	        SU-   5        U$ U(       a  [	        SU-   5        0 U l        [         R&                  " U5      U R$                  S'   U(       a  [	        SU	-   5        [        R                  R)                  U	5      (       d+  [	        SU	 S3[*        R,                  S9  [/        SU	 S35      e[         R&                  " U	5      U R$                  S'   U(       a  [	        SU
-   5        U
c  [/        SU
 S35      e[         R&                  " U
5      U R$                  S'   0 U l        / n[3        U5      S:w  a  Sn[        R                  R)                  U5      (       aZ  [         R&                  " U5      U l        U H9  nUU R0                  ;   a  M  U R5                  U5        UR!                  U5        SnM;     U(       a0  [         R6                  " XR0                  5        [	        SU 35        U$ [	        SU S35        U$ U R$                  S    H#  n0 U R0                  U'   U R5                  U5        M%     [         R6                  " XR0                  5        [	        SU-   5        0 U l        U$ )NrC   rD   FrE   rF   rG   rH   r   rI   z/tofde.rJ   rK   rL   rM   rN   rO   rP   rR   rS   r   TrT   rU   rV   rW   rj   s                    r   OLD_UPDATE_for_krikt_fufiAlfit.OLD_UPDATE_for_krikt_fufi   s    ''
3	zz((33L>:; ). {{##H--;;,y8;KK!VV[[1C7)CcI
!ZZ__Y7
 "VV[[1C7)CcI
!ZZ__Y7
;;,y83> 77??:.D..H**..C	)C/#5J 00J<!OOJ'!OOJ'ELL$D$D&12O.:-.	J/		#.:-.ww~~j))'
|:>zz#1*ZHIIJ/		#.:-.1*ZHIIJ/		#{q "Nww~~h''H-(E OOE*&&u-%)N ) 

8VV,XJ/0  H:[9:YYs^EDFF5MOOE" $ 	

8VV$nx'(r!   )r   r`   r   r   rf   r   r   r   r   r   r   r   r   r   r   )F)
new_to_old)r%   )N)__name__
__module____qualname____firstlineno__r   r0   r8   r@   r>   rh   r   r~   r   r   r   __static_attributes__ r!   r   r
   r
      sh    &	 !&dEF @D*,5).Vp#<J,8 DH*,5).Ur!   r
   )r'   r   r&   r3   rc   rX   r   r   r   r   r   r   r   r   r   r   r   r   r
   r   r!   r   <module>r      s7    	 	   
       { {r!   