Ë
    (üàg¡:  ã                   óB  — d Z ddlZddlmZ ddlmZ ddlmZmZ ddl	m
Z
  G d„ dej                  «      Z G d	„ d
e«      Z G d„ de«      Zd„ Zd„ Zd„ Z G d„ dej                  «      Z G d„ dej                  «      Zi fd„Zedk(  rd„ Z ej.                  d¬«       yy)z?Self-test suite for Crypto.Hash.TurboSHAKE128 and TurboSHAKE256é    N)Ú	unhexlify)Úlist_test_cases)ÚTurboSHAKE128ÚTurboSHAKE256)Úbchrc                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTurboSHAKETestc                 óš  — | j                   j                  «       }|j                  d«       | j                   j                  d¬«      }|j                  d«       | j                   j                  d¬«      }|j                  d«      }|j                  d«      }|j                  d«      }| j	                  ||«       | j	                  ||«       y )Nó   90é   ©Údomain©Údataé€   )Ú
TurboSHAKEÚnewÚupdateÚreadÚassertEqual)ÚselfÚxof1Úxof2Úxof3Úout1Úout2Úout3s          úb/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/Crypto/SelfTest/Hash/test_TurboSHAKE.pyÚtest_new_positivez TurboSHAKETest.test_new_positive   s¡   € à�‰×"Ñ"Ó$ˆØ�‰�EÔà�‰×"Ñ"¨$Ð"Ó/ˆØ�‰�EÔà�‰×"Ñ"¨Ð"Ó.ˆà�y‰y˜‹~ˆØ�y‰y˜‹~ˆØ�y‰y˜‹~ˆà×Ñ˜˜tÔ$Ø×Ñ˜˜tÕ$ó    c                 óÔ   — | j                   j                  d¬«      }| j                   j                  d¬«      }| j                  |j                  d«      |j                  d«      «       y )Né   r   é    r   )r   r   ÚassertNotEqualr   )r   r   r   s      r   Útest_new_domainzTurboSHAKETest.test_new_domain   sP   € Ø�‰×"Ñ"¨$Ð"Ó/ˆØ�‰×"Ñ"¨$Ð"Ó/ˆØ×Ñ˜DŸI™I c›N¨D¯I©I°c«NÕ;r    c                 óŒ  — t        d«      dz  t        d«      dz  g}| j                  j                  «       }|j                  |d   «      j                  |d   «       |j	                  d«      }| j                  j                  «       }|j                  |d   |d   z   «       |j	                  d«      }| j                  ||«       y )Né
   éÈ   é   i,  r   é   )r   r   r   r   r   r   )r   Úpiecesr   Údigest1r   Údigest2s         r   Útest_updatezTurboSHAKETest.test_update$   s¢   € Ü�r“(˜S‘.¤$ r£(¨S¡.Ð1ˆà�‰×"Ñ"Ó$ˆØ�‰�F˜1‘IÓ×%Ñ% f¨Q¡iÔ0Ø—)‘)˜B“-ˆà�‰×"Ñ"Ó$ˆØ�‰�F˜1‘I  q¡	Ñ)Ô*Ø—)‘)˜B“-ˆà×Ñ˜ 'Õ*r    c                 óz   — | j                   j                  «       }| j                  t        |j                  d«       y )NÚstring)r   r   ÚassertRaisesÚ	TypeErrorr   ©r   r   s     r   Útest_update_negativez#TurboSHAKETest.test_update_negative1   s*   € Ø�‰×"Ñ"Ó$ˆØ×Ñœ) T§[¡[°)Õ<r    c                 óÎ   — | j                   j                  «       }|j                  d«      }| j                  t	        |t
        «      «       | j                  t        |«      d«       y )NéZ   )r   r   r   Ú
assertTrueÚ
isinstanceÚbytesr   Úlen)r   r   Údigests      r   Ú	test_readzTurboSHAKETest.test_read5   sJ   € Ø�‰×"Ñ"Ó$ˆØ—‘˜2“ˆð 	�‰œ
 6¬5Ó1Ô2Ø×Ñœ˜V› bÕ)r    c                 ó¾   — | j                   j                  «       }|j                  d«       |j                  d«       | j	                  t
        |j                  d«       y )Ns   rrrrr6   s   ttt)r   r   r   r   r1   r2   r3   s     r   Útest_update_after_readz%TurboSHAKETest.test_update_after_read=   sA   € Ø�‰×"Ñ"Ó$ˆØ�‰�GÔØ�	‰	�"ŒØ×Ñœ) T§[¡[°&Õ9r    c                 óL  — | j                   j                  d¬«      }|j                  d«       |j                  d«      }|j                  «       }|j                  d«       |j                  d«      }| j	                  ||«       | j                  t        |j                  d¬«       y )Né   r   r   éd   )r   r   r   r   r   r1   r2   )r   r   r,   r   r-   s        r   Útest_newzTurboSHAKETest.test_newC   s   € Ø�‰×"Ñ"¨$Ð"Ó/ˆØ�‰�EÔØ—)‘)˜C“.ˆà�x‰x‹zˆØ�‰�EÔØ—)‘)˜C“.ˆà×Ñ˜ 'Ô*à×Ñœ) T§X¡X°dÐÕ;r    N)
Ú__name__Ú
__module__Ú__qualname__r   r%   r.   r4   r<   r>   rB   © r    r   r	   r	      s%   „ ò%ò"<ò
+ò=ò*ò:ó<r    r	   c                   ó   — e Zd ZeZy)ÚTurboSHAKE128TestN)rC   rD   rE   r   r   rF   r    r   rH   rH   Q   ó   „ Ø�Jr    rH   c                   ó   — e Zd ZeZy)ÚTurboSHAKE256TestN)rC   rD   rE   r   r   rF   r    r   rK   rK   U   rI   r    rK   c                 ó|   — | j                  dd«      j                  dd«      j                  dd«      }t        |«      S )Nú Ú ú
ú)Úreplacer   )ÚtxtÚcleans     r   Útxt2binrT   Y   s7   € Ø�K‰K˜˜RÓ ×(Ñ(¨¨rÓ2×:Ñ:¸4ÀÓD€EÜ�UÓÐr    c                 ó  — t        | «      }dj                  t        dd«      D �cg c]  }t        |«      ‘Œ c}«      }t        d| dz
  d«      D ]
  }||||dz    Œ | dz  }|r| dz  dz  }|d | ||d  t	        |«      | k(  sJ ‚|S c c}w )Nr    r   éû   )Ú	bytearrayÚjoinÚranger   r:   )ÚnÚresÚxÚpatternÚbaseÚremains         r   Úptnr`   ^   s    € Ü
�A‹,€CØ�h‰h¬¨q°$«Ö8 Aœ˜Q�Ò8Ó9€GÜ�a˜˜T™ 4Ó(ò (ˆØ 'ˆˆD�˜‘Ñð(à�‰X€FÙØ�T‘	˜TÑ!ˆØ˜W˜fÐ%ˆˆDˆEˆ
Üˆs‹8�qŠ=Ðˆ=Ø€Jùò 9s   ¥Bc              #   óV   K  — t        dt        | «      |«      D ]  }| |||z    –— Œ y ­w)Nr   )rY   r:   )ÚsourceÚsizeÚis      r   Úchunkedre   k   s3   è ø€ Ü�1”c˜&“k 4Ó(ò ˆØ�Q�q˜‘vÐÓñùs   ‚')c                   ól   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTurboSHAKE128TVc                 óˆ   — d}t        |«      }t        j                  «       j                  d«      }| j	                  ||«       y )Nzg1E 41 5F 1C 59 83 AF F2 16 92 17 27 7D 17 BB 53
        8C D9 45 A3 97 DD EC 54 1F 1C E4 1A F2 C1 B7 4Cr#   ©rT   r   r   r   r   ©r   ÚtvÚbtvr[   s       r   Útest_zero_1zTurboSHAKE128TV.test_zero_1r   s=   € ð;ˆô �b‹kˆÜ×ÑÓ!×&Ñ& rÓ*ˆØ×Ñ˜˜cÕ"r    c                 óˆ   — d}t        |«      }t        j                  «       j                  d«      }| j	                  ||«       y )Nz×1E 41 5F 1C 59 83 AF F2 16 92 17 27 7D 17 BB 53
        8C D9 45 A3 97 DD EC 54 1F 1C E4 1A F2 C1 B7 4C
        3E 8C CA E2 A4 DA E5 6C 84 A0 4C 23 85 C0 3C 15
        E8 19 3B DF 58 73 73 63 32 16 91 C0 54 62 C8 DFé@   ri   rj   s       r   Útest_zero_2zTurboSHAKE128TV.test_zero_2z   ó=   € ð;ˆô
 �b‹kˆÜ×ÑÓ!×&Ñ& rÓ*ˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  «       j                  d«      dd  }| j	                  ||«       y )NzgA3 B9 B0 38 59 00 CE 76 1F 22 AE D5 48 E7 54 DA
        10 A5 24 2D 62 E8 C6 58 E3 F3 A9 23 A7 55 56 07é0'  éàÿÿÿri   rj   s       r   Útest_zero_3zTurboSHAKE128TV.test_zero_3„   óD   € ð;ˆô �b‹kˆÜ×ÑÓ!×&Ñ& uÓ-¨c¨dÐ3ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nzg55 CE DD 6F 60 AF 7B B2 9A 40 42 AE 83 2E F3 F5
        8D B7 29 9F 89 3E BB 92 47 24 7D 85 69 58 DA A9r*   r   r#   ©rT   r   r   r`   r   r   rj   s       r   Ú
test_ptn_1zTurboSHAKE128TV.test_ptn_1Œ   sC   € ð;ˆô �b‹kˆÜ×Ñ¤S¨£VÔ,×1Ñ1°"Ó5ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nzg9C 97 D0 36 A3 BA C8 19 DB 70 ED E0 CA 55 4E C6
        E4 C2 A1 A4 FF BF D9 EC 26 9C A6 A1 11 16 12 33é   r   r#   rx   rj   s       r   Útest_ptn_17zTurboSHAKE128TV.test_ptn_17”   sC   € ð;ˆô �b‹kˆÜ×Ñ¤S¨£WÔ-×2Ñ2°2Ó6ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nzg96 C7 7C 27 9E 01 26 F7 FC 07 C9 B0 7F 5C DA E1
        E0 BE 60 BD BE 10 62 00 40 E7 5D 72 23 A6 24 D2é!  r   r#   rx   rj   s       r   Útest_ptn_17_2zTurboSHAKE128TV.test_ptn_17_2œ   óC   € ð;ˆô �b‹kˆÜ×Ñ¤S¨£ZÔ0×5Ñ5°bÓ9ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )NzgD4 97 6E B5 6B CF 11 85 20 58 2B 70 9F 73 E1 D6
        85 3E 00 1F DA F8 0E 1B 13 E0 D0 59 9D 5F B3 72é1  r   r#   rx   rj   s       r   Útest_ptn_17_3zTurboSHAKE128TV.test_ptn_17_3¤   r€   r    c                 ó  — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       t        j                  «       }|D ]  }|j                  t        |«      «       Œ |j	                  d«      }| j                  ||«       dD ][  }t        j                  «       }t        ||«      D ]  }|j                  |«       Œ |j	                  d«      }| j                  ||«       Œ] y )NzgDA 67 C7 03 9E 98 BF 53 0C F7 A3 78 30 C6 66 4E
        14 CB AB 7F 54 0F 58 40 3B 1B 82 95 13 18 EE 5CéAF r   r#   ©é   r{   é   é   r   )	rT   r`   r   r   r   r   r   r   re   ©r   rk   rl   r   r[   Úxofr\   Ú
chunk_sizes           r   Útest_ptn_17_4zTurboSHAKE128TV.test_ptn_17_4¬   só   € ð;ˆô �b‹kˆÜ�5‹zˆô ×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÔ"ô ×ÑÓ!ˆØò 	 ˆAØ�J‰J”t˜A“wÕð	 à�h‰h�r‹lˆØ×Ñ˜˜cÔ"ð /ò 	'ˆJÜ×#Ñ#Ó%ˆCÜ˜T :Ó.ò �Ø—
‘
˜1•ðà—(‘(˜2“,ˆCØ×Ñ˜S #Õ&ñ	'r    c                 óT  — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       t        j                  «       }t        |d«      D ]  }|j                  |«       Œ |j	                  d«      }| j                  ||«       y )NzgB9 7A 90 6F BF 83 EF 7C 81 25 17 AB F3 B2 D0 AE
        A0 C4 F6 03 18 CE 11 CF 10 39 25 12 7F 59 EE CDéQª r   r#   é    )rT   r`   r   r   r   r   re   r   ©r   rk   rl   r   r[   r‹   Úchunks          r   Útest_ptn_17_5zTurboSHAKE128TV.test_ptn_17_5Æ   s™   € ð;ˆô �b‹kˆÜ�5‹zˆô ×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÔ"ô ×ÑÓ!ˆÜ˜T 4Ó(ò 	ˆEØ�J‰J�uÕð	à�h‰h�r‹lˆØ×Ñ˜˜cÕ"r    c                 ó¢   — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       y )Nzg35 CD 49 4A DE DE D2 F2 52 39 AF 09 A7 B8 EF 0C
        4D 1C A4 FE 2D 1A C3 70 FA 63 21 6F E7 B4 C2 B1éaOpr   r#   )rT   r`   r   r   r   r   ©r   rk   rl   r   r[   s        r   Útest_ptn_17_6zTurboSHAKE128TV.test_ptn_17_6Ø   sH   € ð;ˆô �b‹kˆÜ�5‹zˆä×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )NzgBF 32 3F 94 04 94 E8 8E E1 C5 40 FE 66 0B E8 A0
        C9 3F 43 D1 5E C0 06 99 84 62 FA 99 4E ED 5D ABó   ÿÿÿr*   ©r   r   r#   ri   rj   s       r   Útest_ffffff_d01zTurboSHAKE128TV.test_ffffff_d01â   sA   € ð;ˆô �b‹kˆÜ×Ñ _¸TÔB×GÑGÈÓKˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nzg8E C9 C6 64 65 ED 0D 4A 6C 35 D1 35 06 71 8D 68
        7A 25 CB 05 C7 4C CA 1E 42 50 1A BD 83 87 4A 67ó   ÿé   rš   r#   ri   rj   s       r   Útest_ff_d06zTurboSHAKE128TV.test_ff_d06ê   óA   € ð;ˆô �b‹kˆÜ×Ñ W°TÔ:×?Ñ?ÀÓCˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )NzgB6 58 57 60 01 CA D9 B1 E5 F3 99 A9 F7 77 23 BB
        A0 54 58 04 2D 68 20 6F 72 52 68 2D BA 36 63 EDr™   r@   rš   r#   ri   rj   s       r   Útest_ffffff_d07zTurboSHAKE128TV.test_ffffff_d07ò   óA   € ð;ˆô �b‹kˆÜ×Ñ [¸Ô>×CÑCÀBÓGˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nzg8D EE AA 1A EC 47 CC EE 56 9F 65 9C 21 DF A8 E1
        12 DB 3C EE 37 B1 81 78 B2 AC D8 05 B7 99 CC 37ó   ÿÿÿÿÿÿÿé   rš   r#   ri   rj   s       r   Útest_ffffffffffff_d0bz%TurboSHAKE128TV.test_ffffffffffff_d0bú   r£   r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nzg55 31 22 E2 13 5E 36 3C 32 92 BE D2 C6 42 1F A2
        32 BA B0 3D AA 07 C7 D6 63 66 03 28 65 06 32 5Br�   é0   rš   r#   ri   rj   s       r   Útest_ff_d30zTurboSHAKE128TV.test_ff_d30  r    r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nzg16 27 4C C6 56 D4 4C EF D4 22 39 5D 0F 90 53 BD
        A6 D2 8E 12 2A BA 15 C7 65 E5 AD 0E 6E AF 26 F9r™   é   rš   r#   ri   rj   s       r   Útest_ffffff_d7fzTurboSHAKE128TV.test_ffffff_d7f
  r£   r    N)rC   rD   rE   rm   rp   ru   ry   r|   r   rƒ   r�   r“   r—   r›   rŸ   r¢   r§   rª   r­   rF   r    r   rg   rg   p   sR   „ ò#ò#ò#ò#ò#ò#ò#ò'ò4#ò$#ò#ò#ò#ò#ò#ó#r    rg   c                   óf   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTurboSHAKE256TVc                 óˆ   — d}t        |«      }t        j                  «       j                  d«      }| j	                  ||«       y )Nz×36 7A 32 9D AF EA 87 1C 78 02 EC 67 F9 05 AE 13
        C5 76 95 DC 2C 66 63 C6 10 35 F5 9A 18 F8 E7 DB
        11 ED C0 E1 2E 91 EA 60 EB 6B 32 DF 06 DD 7F 00
        2F BA FA BB 6E 13 EC 1C C2 0D 99 55 47 60 0D B0ro   ©rT   r   r   r   r   rj   s       r   rm   zTurboSHAKE256TV.test_zero_1  rq   r    c                 óŽ   — d}t        |«      }t        j                  «       j                  d«      dd  }| j	                  ||«       y )NzgAB EF A1 16 30 C6 61 26 92 49 74 26 85 EC 08 2F
        20 72 65 DC CF 2F 43 53 4E 9C 61 BA 0C 9D 1D 75rs   rt   r±   rj   s       r   rp   zTurboSHAKE256TV.test_zero_2  rv   r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nz×3E 17 12 F9 28 F8 EA F1 05 46 32 B2 AA 0A 24 6E
        D8 B0 C3 78 72 8F 60 BC 97 04 10 15 5C 28 82 0E
        90 CC 90 D8 A3 00 6A A2 37 2C 5C 5E A1 76 B0 68
        2B F2 2B AE 74 67 AC 94 F7 4D 43 D3 9B 04 82 E2r*   r   ro   ©rT   r   r   r`   r   r   rj   s       r   ry   zTurboSHAKE256TV.test_ptn_1'  sC   € ð;ˆô
 �b‹kˆÜ×Ñ¤S¨£VÔ,×1Ñ1°"Ó5ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nz×B3 BA B0 30 0E 6A 19 1F BE 61 37 93 98 35 92 35
        78 79 4E A5 48 43 F5 01 10 90 FA 2F 37 80 A9 E5
        CB 22 C5 9D 78 B4 0A 0F BF F9 E6 72 C0 FB E0 97
        0B D2 C8 45 09 1C 60 44 D6 87 05 4D A5 D8 E9 C7r{   r   ro   r´   rj   s       r   r|   zTurboSHAKE256TV.test_ptn_171  sC   € ð;ˆô
 �b‹kˆÜ×Ñ¤S¨£WÔ-×2Ñ2°2Ó6ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nz×66 B8 10 DB 8E 90 78 04 24 C0 84 73 72 FD C9 57
        10 88 2F DE 31 C6 DF 75 BE B9 D4 CD 93 05 CF CA
        E3 5E 7B 83 E8 B7 E6 EB 4B 78 60 58 80 11 63 16
        FE 2C 07 8A 09 B9 4A D7 B8 21 3C 0A 73 8B 65 C0r~   r   ro   r´   rj   s       r   r   zTurboSHAKE256TV.test_ptn_17_2;  óC   € ð;ˆô
 �b‹kˆÜ×Ñ¤S¨£ZÔ0×5Ñ5°bÓ9ˆØ×Ñ˜˜cÕ"r    c                 óž   — d}t        |«      }t        j                  t        d«      ¬«      j	                  d«      }| j                  ||«       y )Nz×C7 4E BC 91 9A 5B 3B 0D D1 22 81 85 BA 02 D2 9E
        F4 42 D6 9D 3D 42 76 A9 3E FE 0B F9 A1 6A 7D C0
        CD 4E AB AD AB 8C D7 A5 ED D9 66 95 F5 D3 60 AB
        E0 9E 2C 65 11 A3 EC 39 7D A3 B7 6B 9E 16 74 FBr‚   r   ro   r´   rj   s       r   rƒ   zTurboSHAKE256TV.test_ptn_17_3E  r·   r    c                 ó  — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       t        j                  «       }|D ]  }|j                  t        |«      «       Œ |j	                  d«      }| j                  ||«       dD ][  }t        j                  «       }t        ||«      D ]  }|j                  |«       Œ |j	                  d«      }| j                  ||«       Œ] y )Nz×02 CC 3A 88 97 E6 F4 F6 CC B6 FD 46 63 1B 1F 52
        07 B6 6C 6D E9 C7 B5 5B 2D 1A 23 13 4A 17 0A FD
        AC 23 4E AB A9 A7 7C FF 88 C1 F0 20 B7 37 24 61
        8C 56 87 B3 62 C4 30 B2 48 CD 38 64 7F 84 8A 1Dr…   r   ro   r†   )	rT   r`   r   r   r   r   r   r   re   rŠ   s           r   r�   zTurboSHAKE256TV.test_ptn_17_4O  só   € ð;ˆô
 �b‹kˆÜ�5‹zˆô ×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÔ"ô ×ÑÓ!ˆØò 	 ˆAØ�J‰J”t˜A“wÕð	 à�h‰h�r‹lˆØ×Ñ˜˜cÔ"ð /ò 	'ˆJÜ×#Ñ#Ó%ˆCÜ˜T :Ó.ò �Ø—
‘
˜1•ðà—(‘(˜2“,ˆCØ×Ñ˜S #Õ&ñ	'r    c                 óT  — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       t        j                  «       }t        |d«      D ]  }|j                  |«       Œ |j	                  d«      }| j                  ||«       y )Nz×AD D5 3B 06 54 3E 58 4B 58 23 F6 26 99 6A EE 50
        FE 45 ED 15 F2 02 43 A7 16 54 85 AC B4 AA 76 B4
        FF DA 75 CE DF 6D 8C DC 95 C3 32 BD 56 F4 B9 86
        B5 8B B1 7D 17 78 BF C1 B1 A9 75 45 CD F4 EC 9Fr�   r   ro   r�   )rT   r`   r   r   r   r   re   r   r‘   s          r   r“   zTurboSHAKE256TV.test_ptn_17_5k  s™   € ð;ˆô
 �b‹kˆÜ�5‹zˆô ×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÔ"ô ×ÑÓ!ˆÜ˜T 4Ó(ò 	ˆEØ�J‰J�uÕð	à�h‰h�r‹lˆØ×Ñ˜˜cÕ"r    c                 ó¢   — d}t        |«      }t        d«      }t        j                  |¬«      j	                  d«      }| j                  ||«       y )Nz×9E 11 BC 59 C2 4E 73 99 3C 14 84 EC 66 35 8E F7
        1D B7 4A EF D8 4E 12 3F 78 00 BA 9C 48 53 E0 2C
        FE 70 1D 9E 6B B7 65 A3 04 F0 DC 34 A4 EE 3B A8
        2C 41 0F 0D A7 0E 86 BF BD 90 EA 87 7C 2D 61 04r•   r   ro   )rT   r`   r   r   r   r   r–   s        r   r—   zTurboSHAKE256TV.test_ptn_17_6  sH   € ð;ˆô
 �b‹kˆÜ�5‹zˆä×Ñ TÔ*×/Ñ/°Ó3ˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×D2 1C 6F BB F5 87 FA 22 82 F2 9A EA 62 01 75 FB
        02 57 41 3A F7 8A 0B 1B 2A 87 41 9C E0 31 D9 33
        AE 7A 4D 38 33 27 A8 A1 76 41 A3 4F 8A 1D 10 03
        AD 7D A6 B7 2D BA 84 BB 62 FE F2 8F 62 F1 24 24r™   r*   rš   ro   r±   rj   s       r   r›   zTurboSHAKE256TV.test_ffffff_d01‹  sA   € ð;ˆô
 �b‹kˆÜ×Ñ _¸TÔB×GÑGÈÓKˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×73 8D 7B 4E 37 D1 8B 7F 22 AD 1B 53 13 E3 57 E3
        DD 7D 07 05 6A 26 A3 03 C4 33 FA 35 33 45 52 80
        F4 F5 A7 D4 F7 00 EF B4 37 FE 6D 28 14 05 E0 7B
        E3 2A 0A 97 2E 22 E6 3A DC 1B 09 0D AE FE 00 4Br�   rž   rš   ro   r±   rj   s       r   rŸ   zTurboSHAKE256TV.test_ff_d06•  óA   € ð;ˆô
 �b‹kˆÜ×Ñ W°TÔ:×?Ñ?ÀÓCˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×18 B3 B5 B7 06 1C 2E 67 C1 75 3A 00 E6 AD 7E D7
        BA 1C 90 6C F9 3E FB 70 92 EA F2 7F BE EB B7 55
        AE 6E 29 24 93 C1 10 E4 8D 26 00 28 49 2B 8E 09
        B5 50 06 12 B8 F2 57 89 85 DE D5 35 7D 00 EC 67r™   r@   rš   ro   r±   rj   s       r   r¢   zTurboSHAKE256TV.test_ffffff_d07Ÿ  óA   € ð;ˆô
 �b‹kˆÜ×Ñ [¸Ô>×CÑCÀBÓGˆØ×Ñ˜˜cÕ"r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×BB 36 76 49 51 EC 97 E9 D8 5F 7E E9 A6 7A 77 18
        FC 00 5C F4 25 56 BE 79 CE 12 C0 BD E5 0E 57 36
        D6 63 2B 0D 0D FB 20 2D 1B BB 8F FE 3D D7 4C B0
        08 34 FA 75 6C B0 34 71 BA B1 3A 1E 2C 16 B3 C0r¥   r¦   rš   ro   r±   rj   s       r   r§   z%TurboSHAKE256TV.test_ffffffffffff_d0b©  rÀ   r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×F3 FE 12 87 3D 34 BC BB 2E 60 87 79 D6 B7 0E 7F
        86 BE C7 E9 0B F1 13 CB D4 FD D0 C4 E2 F4 62 5E
        14 8D D7 EE 1A 52 77 6C F7 7F 24 05 14 D9 CC FC
        3B 5D DA B8 EE 25 5E 39 EE 38 90 72 96 2C 11 1Ar�   r©   rš   ro   r±   rj   s       r   rª   zTurboSHAKE256TV.test_ff_d30³  r¾   r    c                 óŽ   — d}t        |«      }t        j                  dd¬«      j                  d«      }| j	                  ||«       y )Nz×AB E5 69 C1 F7 7E C3 40 F0 27 05 E7 D3 7C 9A B7
        E1 55 51 6E 4A 6A 15 00 21 D7 0B 6F AC 0B B4 0C
        06 9F 9A 98 28 A0 D5 75 CD 99 F9 BA E4 35 AB 1A
        CF 7E D9 11 0B A9 7C E0 38 8D 07 4B AC 76 87 76r™   r¬   rš   ro   r±   rj   s       r   r­   zTurboSHAKE256TV.test_ffffff_d7f½  rÀ   r    N)rC   rD   rE   rm   rp   ry   r|   r   rƒ   r�   r“   r—   r›   rŸ   r¢   r§   rª   r­   rF   r    r   r¯   r¯     sM   „ ò#ò#ò#ò#ò#ò#ò'ò8#ò(
#ò#ò#ò#ò#ò#ó#r    r¯   c                 óš   — g }|t        t        «      z  }|t        t        «      z  }|t        t        «      z  }|t        t        «      z  }|S ©N)r   rH   rK   rg   r¯   )ÚconfigÚtestss     r   Ú	get_testsrÈ   È  sJ   € Ø€EØ	Œ_Ô.Ó/Ñ/€EØ	Œ_Ô.Ó/Ñ/€EØ	Œ_œ_Ó-Ñ-€EØ	Œ_œ_Ó-Ñ-€EØ€Lr    Ú__main__c                  ó<   — t        j                  t        «       «      S rÅ   )ÚunittestÚ	TestSuiterÈ   rF   r    r   ÚsuiterÍ   Ò  s   € Ü×!Ñ!¤)£+Ó.Ð.r    rÍ   )ÚdefaultTest)Ú__doc__rË   Úbinasciir   ÚCrypto.SelfTest.st_commonr   ÚCrypto.Hashr   r   ÚCrypto.Util.py3compatr   ÚTestCaser	   rH   rK   rT   r`   re   rg   r¯   rÈ   rC   rÍ   ÚmainrF   r    r   ú<module>rÖ      s©   ðÙ Eã Ý å 5ç 4Ý &ôB<�X×&Ñ&ô B<ôJ˜ô ô˜ô òò

òô
`#�h×'Ñ'ô `#ôFr#�h×'Ñ'ô r#ðj ó ð ˆzÒò/à€H‡M�M˜gÖ&ð r    