grthtrhthjhtyjytjytkergtrhtrjytjerhrfh3 «Ú²j"ã@sFddlmZddlTddlTddlTddlTddlZGdd„dƒZdS)é)Ú defaultdicté)Ú*Nc@sleZdZedd„ƒZedd„ƒZeƒZdZdZ e j ƒdfdd„Z dd„Z d d „Z d d „Ze j ƒfd d„ZdS)Ú keyseriescCsttƒS)N)rÚlist©rrú/usr/lib/python3.6/keyseries.pyÚszkeyseries.cCsttƒS)N)rrrrrrr sNcCsä||_||_t|jƒƒ|_xÄ|jƒD]¸}|jj|ƒx¦||jƒD]–\}}xh|jƒD]\}|j rˆ|j ƒop|j ƒ|ks°|j ||j |ƒqT|j ƒoš|j ƒ|ksT|j ||j |ƒqTW|j ||jƒ|j ||jƒqBWq$WdS)N)Ú_kdictÚ_contextÚsetZmissingÚ_zonesÚzonesÚaddÚitemsÚvaluesÚsepÚdeleteÚ_KÚappendÚ_ZÚsort)ÚselfZkdictÚnowÚcontextÚzoneÚalgÚkeysÚkrrrÚ__init__s zkeyseries.__init__ccsbx\|jD]R}xL|j|jgD]<}||kr(qx,||jƒD]\}}x|D] }|VqDWq6WqWqWdS)N)r rrr)rrÚ collectionrrÚkeyrrrÚ__iter__.s  zkeyseries.__iter__cCs"x|D]}tdt|ƒƒqWdS)Nz%s)ÚprintÚrepr)rrrrrÚdump7s zkeyseries.dumpcKs€|jddƒ}|sdS|d}|jr>|j}|jp0d }|jp:d } n|j}|jpLd }|jpVd} |jƒ} |j ƒ} | sv| |kr„|j |ƒ|} | s’| |kr |j |ƒ|} |j ƒ} d} |sÌ|j d|Ž|jd|Ž�nÎ| sà| || k�r| �r(| |||| k�r(|j | |f|Ž|j| || f|Žnì| �s`|j ||| f|Ž|j||| | f|Žn´| |k�rln¨| || k�r¤|j | |f|Ž|j| || f|Žnp| |||| k�rä|j | |f|Ž|j| || f|Žn0|j ||| f|Ž|j||| | f|Žn„|jƒ}| �s8| | || k�rL|j| | f|ŽnN|�sj|j|| | f|Žn0||| k�rzn || | k�rš|j| | f|Ž|j|jk�r´|j|jƒ|}xî|dd…D]Þ}|�s|j d|Ž|j d|Ž|j d|Ž|jd|Ž|j|jk�rÆ|j|jƒ�qÆ|j ƒ} | |} |j | f|Ž|j | f|Ž|j | |f|Ž|j| || f|Ž|j| | f|Ž|j|jk�rž|j|jƒ|}�qÆWx–|�r>|j ƒ�r>|j ƒ||jk�r>|j|jdf|Ž|j|jd |jd |f|Ž}|j |j ƒ|f|Ž|j|j ƒ| f|Ž|j|ƒ|}�qªW|j d|Ž|jd|Žx"|D]}|j|jdf|Ž�q^WdS)NÚforceFréi€Qi,rZ settime_pathÚ keygen_pathÚ randomdevi�'i�'i�'i�')N)N)N)N)N)N)N)N)ÚgetrZksk_rollperiodZksk_prepublishZksk_postpublishZzsk_rollperiodZzsk_prepublishZzsk_postpublishZpublishZactivateZ setpublishZ setactivateZinactiveZ setinactiveZ setdeleterÚkeyttlZttlZsetttlZcoverageZcommitr Zgenerate_successorr)rrÚpolicyrÚkwargsr&r!ZrpZprepubZpostpubÚpÚaÚiZfudgeÚdÚprevrrrÚ fixseries;s¬                        zkeyseries.fixseriescKsþ|jd|jƒ}|jd|jjddƒƒ}|jddƒ}�xÆ|D�]¼}g}|j|ƒ} |pX| jpXd}| j} tj| ƒ} d|ks||d ræt|j || ƒdkrÖtj |jd |jd ||| | j d| j pºd f|Ž} |j || j | ƒ|j |j |ƒd |ksú|d  �rht|j|| ƒdk�rXtj |jd |jd ||| | jd | j �prrrrrs   vr)r<rr7ZkeydictZkeyeventr,rBrrrrrÚ s