� ��^c@s�ddlZddlZddlmZd�ZddlmZd�Zd�Zd�Zd�Z ddlZd �Z d �Z d �Z e �dS( i����N(targvcCsSd}xB|D]:}t|�}|tj|d?d@tj|d@}q W|GdS(Ntii(tordtstringt hexdigits(tstrtoutstrtito((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytMDPrints   ,(ttimecCs8d}x+t||d�D]}|t|�}qW|S(NRi(trangetchr(tstarttendtresultR((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytmakestrsc Cs�d}d}||}d }td|d�}|||}|||| }~~dG|GdGHt�}tj�}x!t|�D]}|j|�q�W|j�} t�} t| �dGHd G| |GHd G|| |GHdS( Ni�i'iiisMD5 time trial. Processings characters...sis digest of test input.sSeconds to process test input:s Characters processed per second:i(RR tmd5tnewR tupdatetdigestR ( tTEST_BLOCK_SIZEt TEST_BLOCKSt TEST_BYTEStfilsiztfillertdatatt1t mdContextRRtt2((s./usr/lib64/python2.7/Demo/md5test/md5driver.pyt MDTimeTrials&        cCs*ttj|�j��d|dGHdS(Nt"(R RRR(R((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytMDString;scCsat|d�}tj�}x*|jd�}|s7Pn|j|�qWt|j��|GHdS(Ntrbi(topenRRtreadRR R(tfilenametfRR((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytMDFile@s cCsQtj�}x-tjjd�}|s+Pn|j|�qWt|j��HdS(Ni(RRtsyststdinR#RR R(RR((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytMDFilterPs cCs�dGHtd�td�td�td�tttd�td���tttd�td��ttd�td��ttd �td ���tttd �td ��d d �td �dS(NsMD5 test suite results:Rtatabcsmessage digesttztAtZt0t9t1itfoo(R RRR&(((s./usr/lib64/python2.7/Demo/md5test/md5driver.pyt MDTestSuite]s    N'cCs�tt�dkrt�nxitdD]]}|d dkrNt|d�q'|dkrdt�q'|dkrzt�q't|�q'WdS(Niis-ss-ts-x(tlenRR)R RR3R&(targ((s./usr/lib64/python2.7/Demo/md5test/md5driver.pytmainns     ( RRR'RR R RRR R&R)R3R6(((s./usr/lib64/python2.7/Demo/md5test/md5driver.pyts     "