📄 librand_chacha-b1215e313103b90d.rmeta
/home/palash/git/iron_learn/target/debug/deps/librand_chacha-b1215e313103b90d.rmeta
Language: rmeta • Lines: 2714
rust
\�#rustc 1.92.0 (ded5c06cf 2025-12-08)���	ⷄ�ۆ��p��-225863f279df55c4��١�	�T�6a��D�
-5080178c80bf7a93��uӰ]����d��!�-06039bcfba61f665��**�٭T��HО�9�-3e2e950d4bac10b5��	�t�#3Ҵη��Ǣ-d25e598578fbf080�rustc_std_workspace_core������Nm��gmY���-327ea4f353b4eb8c���y.:i���gy"1�r-94fdfaf0af91a65d�miniz_oxide�M�^�yTLm�L�d=B-5312b588e5cfab93�adler2��;~�7�ɴ,P?���-1e0b0d62df36c85c�	hashbrown�L�ϫ	2݆y��q-2ed6a8f06fc51a9d�rustc_std_workspace_alloc�a���p��H����6Z�-05b02707a5b2a256�
std_detect�	c�LN����=1�ʶӐ-5978f0713dd5442d�rustc_demangle�X�Fq��UՃ�>7z
��-43b2ff22c18e1125�cfg_if�֦<����ɐ¬�-6a40188dd7d989d2�	addr2line���,2�!xb�"6�!�	-11d54e777384a9e5�gimli��2��I.�ġ�����-35018e994bad7042�object��T �f��Y�
hQec-2dc10b344e05b569�memchr��xZT9�C��I�Mg�-09f2ab7e0d97e07a��~ݤ	����h���-932f22f820d1e5ec�	rand_core�w������
<�~c<!-d10a081d67980ee0�	getrandom���T5֪Wd��T�n�|-ca376ebfba62ea13���v�
їG}�/x$YxD-e720413b8edafa0a��	�-����1ؔ=��G��-e6f0229506bd0299�
ppv_lite86�;���{��b�5��(�-d9cfe94350d59e03�zerocopy�r_k���V"�E�WT�g-323d7e7ef672c39a�zerocopy_derive���כS��Y	*�V?��-278fc09030afb1ae�Deserialize�\��<�serde�<���Deserializer�d��/�
(&(	Serialize�L��P�
IGI
Serializer�T��r�
kik�$�h�$�h%add_pos�<��l�big�,���%d0123�,��l��,�����
X�Z�8�Y�
8�Y��Y��
H�Z�#�
 ��
X�Z�8�Y�
8�Y��Y��
H�Z�#�
 ��
X�Z�8�Y�
8�Y��Y��
H�Z�#�
 %refill_wide�\�.�9.�J�).�Jy.�J�.�J%refill_narrow_rounds���0�9T�J�)T�JyT�J�T�J%set_stream_param���5�9p�_�)p�_yp�_�p�_%get_stream_param���7�9|�_�)|�_y|�_�|�_%get_seed�D�9�9��_�)��_y��_���_%init_chacha�\�=�9��_�)��_y��_���_%
init_chacha_x�l�B�9��_�)��_y��_���_�chacha�	
BUF_BLOCKS�BLOCK_WORDS�Array64�
������as_mut���!�!�chacha_impl�guts�%%%%%%%%%%	%
%%%
%BLOCK�%BLOCK64�%LOG2_BUFBLOCKS�%	BUFBLOCKS�%BUFSZ64�%BUFSZ�%STREAM_PARAM_NONCE�%STREAM_PARAM_BLOCK�%round�<V�%diagonalize�>�%
undiagonalize�@�%B�
CBrefill4�EB
set_block_pos�B
get_block_pos�B	set_nonce�B	get_nonce�B�K%�MMach�%�O�%refill_wide_impl�Q�Q%
read_u32le�	ChaChaRng�
ChaChaCore�>_�a�aResults�agenerate�eSeed�fe	from_seed�h	k�lk�
onext_u32�onext_u64�o
fill_bytes�sget_word_pos�sset_word_pos�s
set_stream�s
get_stream�s�x
{�}�
abstract20��������ChaCha20Core���������ChaCha20Rng��rng��������seed���stream��word_pos���������������������������������������������������� 
abstract12��������ChaCha12Core���!��"#��$��ChaCha12Rng���%��&����������������������'��(������)������*+�����,������-�����������./��0��1	abstract8��������ChaCha8Core���2��34��5��
ChaCha8Rng���6��7����!������������������%ChaCha��b�����%��%%��%��%State����a���"����%����%�
��fn_impl������	impl_avx2���impl_avx���
impl_sse41���
impl_ssse3���	impl_sse2��%�
��#�����#��$��$��$��$%���#�����$��$%���#�����$��$%����#�������$���$�%����#������$���$�%�����#�������$����$��88 8#8#8#8C8C8E8E8G8H8I8J8K8Q8Q8T8`8`8`8d8d8p8q8r8r8t8u8v8w8x8~8~8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8�8����XMN�����1
�2��1�2��1�_�1������13�9;M����2��2�2��2�_�2�2��2�2��������a�R����_�3��3|�3��3��3�2��3�3��3�_������������n��9E����4��4�4��4��48�3��38�4�������ƙ�������5��5�5��5�_�5�5��5�5������F����D��_�6��6|�6��6��6�5��6�6��6�_������������)���yL�%���7��7�7��7��78�6��68�7���� �������ϗ����9��9�9��9�_�9�9��9�9����!���Z�ۀ��_�9��9|�9��9��9�9��9�9��9�_���!�����������!+gz����:��:�:��:��:8�9��98�:����"��"������f�?�~���<��<�<��<����#��#��"����+��(�������������������!_���������������������������������}������������������������������������a�����e�k���������j�����o�����z�����{����������������������	�_
=��C�
1�
EE�(|��	�
���B�#4��
�B���B�#16��
@+�C6=64�� �Cg,�C7>32���Ci,�C7>8��/ �Cm,�C7>32��O �Cy,�C7>32��] �C�-�C8?32�T\ �Cp�~�C��32�� �C�-�C8?32���C�-�C8?8��/ �C�-�C8?32��O �C�-�C8?32��] �C�-�C8?32�T\ �Cp�~�C��32�� �C�-�C8?32���C�-�C8?8��/ �C�-�C8?32��O �C�-�C8?32��] �C�-�C8?32�T\ �Cp�~�C��32��
�C��#4�C,�$16�d�,�4�C��-5�P�$94�C_��
�P��6�P�#2���t�6�P@�P,	��P@6�PY+�Pi6�P��+7�P��*�6�P�6�P�6�P_���<�5�PL�7�P'	*5�P(7�PN�P��48�P��P�.�5�P�7�P�5�P�7�P_���<�8�P�C��19�C,�$98�P_��
��":�U�$1��
�U��";�U�$0��
 �CD+�C6=32�,�
9�CF$�C/6:9�CBUFSZ��
 �CL+�C6=32�,�%
9�CS$�C/6:9�CBUFSZ�,�.
9�C�%�C07;9�CBUFSZ�Ya9�Cn�|�C���9�CBUFSZ���9�C����C���9�CBUFSZ�9�C�-�C9AF9�CBUFSZ�en9�C|���C���9�CBUFSZ���9�C����C��9�CBUFSZ�!*9�C8�G�CS[`9�CBUFSZ��:
 �C�,�C7>32�S[ �Co�}�C��32��;
 �C�,�C7>32��� �C�"�C.632�LU �Cj�y�C��32��=
 �C�,�C7>32�S[ �Co�}�C��32��� �C����C��32��� �C� �C,432��B
 �C�,�C7>32��B
�C�,�C7>24��� �C����C��32����C����C��24�HQ �Cf�u�C��32�LU�Cj�y�C��24��� �C�#�C/732���C�'�C3;24���
�2&�11�2�C@FM%\]��L��d��V�\��W�d��X�\��Y� \��Z�!T��[�����(% The ChaCha random number generators.�����B? These are native Rust implementations of RNGs derived from the���-* [ChaCha stream ciphers] by D J Bernstein.����� ## Generators�����PM This crate provides 8-, 12- and 20-round variants of generators via a "core"���LI implementation (of [`BlockRngCore`]), each with an associated "RNG" type��� (implementing [`RngCore`]).�����NK These generators are all deterministic and portable (see [Reproducibility]���96 in the book), with testing against reference vectors.�����#  ## Cryptographic (secure) usage�����NK Where secure unpredictable generators are required, it is suggested to use���63 [`ChaCha12Rng`] or [`ChaCha20Rng`] and to seed via���! [`SeedableRng::from_os_rng`].�����KH See also the [Security] chapter in the rand book. The crate is provided���	IF "as is", without any form of guarantee, and without a security audit.��	���	 ## Seeding (construction)��	���	KH Generators implement the [`SeedableRng`] trait. Any method may be used,���
MJ but note that `seed_from_u64` is not suitable for usage where security is���  important. Some suggestions:�����FC 1.  With a fresh seed, **direct from the OS** (implies a syscall):�\�     ```���A>     # use {rand_core::SeedableRng, rand_chacha::ChaCha12Rng};���-*     let rng = ChaCha12Rng::from_os_rng();���#      # let _: ChaCha12Rng = rng;�\�
�u��
@= 2.  **From a master generator.** This could be [`rand::rng`]���
OL     (effectively a fresh seed without the need for a syscall on each usage)���=:     or a deterministic generator such as [`ChaCha20Rng`].���OL     Beware that should a weak master generator be used, correlations may be���?<     detectable between the outputs of its child generators.���     ```ignore���:7     let rng = ChaCha12Rng::from_rng(&mut rand::rng());�\��u����(% See also [Seeding RNGs] in the book.����� ## Generation�����KH Generators implement [`RngCore`], whose methods may be used directly to���.+ generate unbounded integer or byte values.�<� ```���*' use rand_core::{SeedableRng, RngCore};���! use rand_chacha::ChaCha12Rng;�����=: let mut rng = ChaCha12Rng::from_seed(Default::default());�ܾ let x = rng.next_u64();���&# assert_eq!(x, 0x53f955076a9af49b);�<��}����NK It is often more convenient to use the [`rand::Rng`] trait, which provides���LI further functionality. See also the [Random Values] chapter in the book.�����96 [ChaCha stream ciphers]: https://cr.yp.to/chacha.html���KH [Reproducibility]: https://rust-random.github.io/book/crate-reprod.html���IF [Seeding RNGs]: https://rust-random.github.io/book/guide-seeding.html���KH [Security]: https://rust-random.github.io/book/guide-rngs.html#security���IF [Random Values]: https://rust-random.github.io/book/guide-values.html���41 [`BlockRngCore`]: rand_core::block::BlockRngCore���#  [`RngCore`]: rand_core::RngCore���+( [`SeedableRng`]: rand_core::SeedableRng���EB [`SeedableRng::from_os_rng`]: rand_core::SeedableRng::from_os_rng���?< [`rand::rng`]: https://docs.rs/rand/latest/rand/fn.rng.html���B? [`rand::Rng`]: https://docs.rs/rand/latest/rand/trait.Rng.html�����8�l��79https://www.rust-lang.org/logos/rust-logo-128x128-blk.png���;$�8����7%https://www.rust-lang.org/favicon.ico���'$�8�l��7#https://rust-random.github.io/rand/���%�������8�$���8�$���8�,���8unused_variables���$�8�$���8warnings�D���<%\]�d�e�d�V�c�W�b�X�a�Y� `�Z�!_�[�����T�4�����������"4�����[BlockRng�D��BlockRngCore�d�	CryptoBlockRng�t�
	CryptoRng�L��RngCore�<�|
SeedableRng�\�����L����:����{}��,ikSU:<��T��B��\��B�<�����2��1�XMN���j�1�P�j�1
�2]_<��j1!�C��4������2<��1^�^!��!�����1�ģ4����1��2�
�2$���!�����1��� 4����1��2�
�2$���9������2$��<��1 � ')��,����1�1�
 �2$���!�""����1#�_#��4������1��^�^��^��[�^buf��[����e�S����������������������q�aXÅÅą��:����!�!
#�2$���Ą\���e��,�8ChaChaXCore�\�&�8�,�$�,�8
ChaChaXRng�T�&�8�,�$�,�8rounds�4�&�8�$�$�,�8��&�8�$�$�,�8abst�$�&�8�,�$�*���e�+���8���,�8��+���8�4���8t,�$�8�L�$�8��8�84�,�8��\���8�,�&�8�"4�$�8$�8��'�8�,�8
�,�8��\���8�8����
�8$�$�8��&��8�8��'�8�L�(�8��'�8�4���8write�,�	���8��$�7ChaChaXCore {{}}���8$�8��d�8
�,�8��\���8!$�8�$��8��%�8!$�8�<��8�<��8���%�+���8�4�8�8�D����8�8$�$�8r��&��8�8$�'�8�<���8$� �8�,� �8�<���,�8�4�$��8�8˟� �7��%�8$�8��\�8
�,�8��\���
8!$�8�$����8��%�732��%�+���8�4�8�8�L���8�$�&�8$�'�8�$�(�8$���,�8��\���8�,�&�8�"4�'�8�
����8�$�$����7���%�7��$�8$�8Ìt�8
�,�8��\���<S A cryptographically secure random number generator that uses the ChaCha algorithm.���V<��<\ ChaCha is a stream cipher designed by Daniel J. Bernstein[^1], that we use as an RNG. It is���_<[ an improved variant of the Salsa20 cipher family, which was selected as one of the "stream���^<: ciphers suitable for widespread adoption" by eSTREAM[^2].���=<��<X ChaCha uses add-rotate-xor (ARX) operations as its basis. These are safe against timing���[<[ attacks, although that is mostly a concern for ciphers and not for RNGs. We provide a SIMD��� ^<U implementation to support high throughput on a variety of common hardware platforms.���!X<��"<[ With the ChaCha algorithm it is possible to choose the number of rounds the core algorithm���"^<Y should run. The number of rounds is a tradeoff between performance and security, where 8���#\<Z rounds is the minimum potentially secure configuration, and 20 rounds is widely used as a���#]< conservative choice.���$<��%<Z We use a 64-bit counter and 64-bit stream identifier as in Bernstein's implementation[^1]���%]<Z except that we use a stream identifier in place of a nonce. A 64-bit counter over 64-byte���%]<Y (16 word) blocks allows 1 ZiB of output before cycling, and the stream identifier allows���&\<Z 2<sup>64</sup> unique streams of output per seed. Both counter and stream are initialized���']<H to zero but may be set via the `set_word_pos` and `set_stream` methods.���(K<��(< The word layout is:���)<��)< ```text�\�)<' constant  constant  constant  constant���)*<# seed      seed      seed      seed���)&<Ҳ��*&<( counter   counter   stream_id stream_id���*+<�}<�+<��+<K This implementation uses an output buffer of sixteen `u32` words, and uses���+N<3 [`BlockRng`] to implement the [`RngCore`] methods.���+6<��,<9 [^1]: D. J. Bernstein, [*ChaCha, a variant of Salsa20*](���,<<$       https://cr.yp.to/chacha.html)���-'<��-<3 [^2]: [eSTREAM: the ECRYPT Stream Cipher Project](���-6<(       http://www.ecrypt.eu.org/stream/)���.++�.�.�.8�4�.�.�.8t,�.$�.8�,�.8�.84�.,�.8��T�.�.�/8��/&�/8��D�/�/,�/8��\�/�/$�/8$�/8��\�/8
�/,�/8��T�/�/�1
8!$�/8�$�/�/�/�/8��/%�/7���/%�/+�0�0�08�4�08�08�L�0�0�08�$�0&�08$�0'�08�$�0(�08$�0�0�18�08�$�0�0,�08��\�0'�08�L�0�0�08�$�0%�08$�1�1�18��1&�18��D�1'�18�
�1�1�18�$�1$�18$�18��<�18
�2,�28��T�2�2�5+�2�2�28�4�28�28�D�2�2�2�28�28$�2(�28��2�2�38$�2 �28��2 �28�D�2�2�2+�3�3�38�4�38�38�D�3�3�3�38�38$�3(�38��3�3�38$�3 �38��3 �38�D�3�3�3+�4�4�48�4�48�48�T�4�4�4	�48�48$�4$�48bytes�,�4&�4�48�4�4�48��4�4�58$�4 �48��4 �48�T�4�4�48��,�48$�5,�58��T�5�5�PA<> Get the offset from the start of the stream, in 32-bit words.���6A<��7<E Since the generated blocks are 16 words (2<sup>4</sup>) long and the���7H<H counter is 64-bits, the offset is a 68-bit number. Sub-word offsets are���8K<G not supported, hence the result can simply be multiplied by 4 to get a���8J<
 byte-offset.���9+�9�9�98�4�98�:8�:8�d�:�:�:�:8$�:(�:8�$�:�:�@%8�:8buf_start_block�|�:�:�:�;8�:8
buf_end_block�l�:�:8$�: �:8��; �;8�$�; �;8�,�; �;8�l�;�;�;%�;8��;'�;8�d�;�;�;8��l�;$�;8�T�; �;8into�$�;�;�;%�;8�<�<�<8buf_offset_blocks���<$�<8block_offset_words���<�<�<�>!8�<8buf_offset_words���<�<8$�< �<8��< �<8�,�<�<�<8�<8��<%�<8�=8blocks_part�\�=�=8����=�=8��='�=8�$�=�=�=8�\�=%�=8�=8
words_part�T�=�=8����=�>8��>'�>8�$�>�>�>8�\�>%�>�>�>8��\�>$�>8��T�>%�>8�>8	pos_block�L�>�>8��?'�?8�d�?�?�?8��|�?$�?8����?%�?8�?8pos_block_words�|�?�?8�$�?'�?8�$�?�?�?8��L�?
�?8�$�?'�?8�$�?�@�@8�\�@%�@8��|�@�@8�$�@'�@8�$�@�@�@8����@<> Set the offset from the start of the stream, in 32-bit words.���@A<��A<D As with `get_word_pos`, we use a 68-bit number. Since the generator���AG<D simply cycles at the end of its period (1 ZiB), we ignore the upper���BG<	 60 bits.�d�B+�C�C�C8�4�C8�C8�C8�d�C�C�C�C8�C8$�C$�C8word_offset�\�C&�C8�$�C�C�E8�C8�,�C�C�C�D8��\�C�C8�$�C'�D8�$�D�D�D8�\�D8�D8��D%�D8$�D �D8��D �D8�$�D �D8�,�D �D8�l�D�D�D8�,�D%�D8$�D �D8��D �E8generate_and_set���E�E�E�E�E8��\�E�E8�$�E'�E8�$�E�E�E8�\�E8�E8�,�E%�E< Set the stream number.���E<��F<E This is initialized to zero; 2<sup>64</sup> unique streams of output���FH< are available per seed/key.���F<��G<E Note that in order to reproduce ChaCha output with a specific 64-bit���GH<F nonce, one can convert that nonce to a `u64` in little-endian fashion���HI<C and pass to this function. In theory a 96-bit nonce can be used by���HF<I passing the last 64-bits to this function and using the first 32-bits as���IL<B the most significant half of the 64-bit counter (which may be set���JE<D indirectly via `set_word_pos`), but this is not directly supported.���JG+�K�K�K8�4�K8�K8�K8�T�K�K�K�K8�K8$�K$�K8�4�K&�K8��K�K�M8$�K �L8��L �L8�$�L �L8�,�L �L8�L�L�L�L8�4�L%�L8�L8$�L �L8��L �L8�,�L�L�L�L764��L�L�M
8�L8wp��L�L8$�L �L8�d�L�L�M%�M8$�M �M8�d�M�M�M8���M%�M< Get the stream number.���M+�N�N�N8�4�N8�N8�N8�T�N�N�N�N8$�N(�N8��N�N�N
8$�N �N8��N �N8�$�N �N8�,�N �N8�L�N�N�N< Get the seed.���O+�O�O�O8�4�O8�O8�O8�D�O�O�O�O8$�O(�O�O�O8��O%�O7���O�O�P
8$�O �O8��O �O8�$�O �O8�,�O �P8�D�P�P�P8$�P8�L�P8
�P,�P8��T�P�P�P8$�P8�$�P�P,�P8��\�P�P8
�P,�P8��T�P�Q�R8�Q8�$�Q�Q�Q8�$�Q&�Q,�Q8��\�Q(�Q8$�Q�Q�R,�Q8��T�Q�Q�R8��Q&�Q8��D�Q'�Q8�
�Q�Q�Q8�$�Q$�Q8$�R8�L�R�R,�R8��T�R�R8
�R,�R8��T�R�R�T8�R8��R�R�S�R8$�R$�R8rhs��R&�R�S,�S8��T�S(�S8�$�S�S�T8�S8�#�S&�S,�S8��$�S'�S,�S8��T�S�S8$�S �S8��$�S�S�S%�S8�S8�"�S&�S,�S8��$�S'�S,�S8��T�S�S8���S �T8��$�T�T�T%�T8�#�T�T8�"�T8$�T8��T8
�T,�T8��T�T�T�T+�T�T�T8��T�T�T8�<�T�T7�
<�T8$�U8�
L�U8
�U,�U8��T�U�U�V8�U8	serialize�L�U�U8S��U�U�U�U�U8$�U$�U8��U&�U8���U(�U8�4�U�U8���U'�U8��U$�U8���U'�U8�,�U�U8$,�U8���V&�V8�T�V$�V�V�V,�V8��$�V'�V,�V8��T�V'�V8�$�V�V�V8$�V �V8��L�V�V�V8��V+�W�W�W8��W�W�W8�<�W�W7�
<�W8$�W�W:'de��W�W8�
\�W�W:���W�W8
�W,�W8��T�W�W�Y8�W8deserialize�\�W�W8D��W�W�W�W8��W&�W8���W(�W8�4�W�X8$�X$�X8���X'�X8�,�X�X8$,�X8���X&�X8�
d�X�X:���X�X$�X�X�Y,�X8��$�X'�X,�X8��T�X'�X8��\�X�Y�Y8��Y �Y8�	�Y�Y�Y�Y8x��Y�Y8$�Y'�Y8�$�Y�Y�Y�Y8���Y8�Y,�Y8��$�Y�Y�e++�Y�Y�Y8��Y�Y�Y8�<�Y�Y7�
<�Y8#�Z8�
,�Z'�Z�Z�Z8�
\�Z$�Z8�
L�Z%�Z+�\�\�\8�4�\�\�\8�,�\$�\8�L�\$�\8��\+�\�\�\8�D�\�\�\8�<�\�\7�
<�\$�\8�4�\�\�\8�
L�\$�\8�
\�\8�]�]�]8,�]84�],�]8��T�]�]�^8�$�]&�]�]�]8��]%�]7���]$�]8�4�]&�]8��]$�]8�D�]&�]8�$�]$�^8$�^8�$�^�^�^8,�^'�^,�^8��T�^�^8
�^,�^8��T�^�^�b8�`8�$�`�`�`8˟�`&�`�`8,�`'�`,�`8��T�`(�`8$�`�`�a8$�`�`�a8�$�`&�`8˟�` �`8�D�`�`�`$�`8�4�a&�a8˟�a �a8�T�a�a�a$�a8�D�a&�a8˟�a �a8�d�a�a�a$�a8$�b8�$�b�b�b,�b8��T�b�b8
�b8,�b'�b,�b8��T�b�b�e8�c8�$�c�c�c8�#�c&�c�c,�c8��T�c(�c8$�c�c�e8#�c8�L�c'�c8��\�c%�d8�d8�d8˟�d�d8$�d'�d8�L�d�d�d8�#�d �d8�$�d%�d8˟�d �d8�T�d�d�d8�#�d �d8�4�d%�d8˟�e �e8�d�e�e�e8�#�e �e8�D�e%�e8˟�e%�eD�$�456789:;<>@MOQT���������dispatch�D��%'dispatch_light128����%(Machine�<��)vec128_storage�t��
%+ArithOps�D��%,BitOps32�D��%-
LaneWords4�T��%.	MultiLane�L��%/
StoreBytes�T��%0Vec4�$��%1Vec4Ext�<��%2Vector�4��%3��)JM+.����q����������z|dfOQ�,��C�<��P��t�%�P��L�%�P�<��P��,��C���%�U���%�U��	H,�
�<�<�==���=�
��=D�
��=D�

<�=���
24��E\��<�<�??���
��=T�

>�=���
#%��Gl��<�<�AA�����T�
@�=���\��<CEGHIJK��0�����B�C �
�B�<B�B
Ckey��nonce�,�
+�C��?<�����<�U��UFB�B
E$�drounds�<���_+�C��+l����<�PB�B
G$��,���"l����<�PB�B
H$���'L����<�PB�B
I$��,���L����<�PB�B
J$���"D����<��B�B
K$��+�C�� I<� %�ď��Pɏ�NN��ď$� �ď<� 
Mďm�� �� �� 57��!D,�!%ď�
�
���
u32x4���
u64x2���
u128x1���
�����p�4��PP�$�!��<�"
Oď���"��"%'��$x��$%��ď��<�U��US�RR�%�$�$��<�$
Qď���$�,�%ڊ<�%��%68	,�C��;T�;%�����U�;
Txs��;��e�4�45555$5$55555F5F5��̓ ChaCha with 20 rounds�L��3����.+ ChaCha with 20 rounds, low-level interface�T� �2���<��$�l���<��1
^�2�� �2`�_`��4������2��^�^��^��[�^���[����e�S����_�_
` �����"�2bcddH� �aa�U`�8�aa���XMN���U��-@�����2��2a�a
d �˟���!�2fh��hH� �ee���!�C��&H��2��2ee
h� ��!hh�C��$�2��/ �3ln��nH�/ �/kk��("�C��0&H�0�3��3kk
n� �0��1�3pqr}~pqr��2@�2���3�Uo�2o
p �2��3@�3���3�Po�3o
q �3��4*P�4����3���o�4o
r �4��(�4��5�3tuvwx��:"��6A���7���7H����8K����8J����9��`�:���3s�:s
t �:��C1��@A���A���AG����BG��`�B��`�C���3s�Cs
u �C��X�C��K)��E���F���FH����F���G���GH����HI����HF����IL����JE����JG��P�K���3�Ps�Ks
v �K�0�K��N��M��P�N���3�Ps�Ns
w �N��O"��O��@�O���3��s�Os
x �O{"�C��P�3��P'�3|�|��Q# �Q�2�3{{
|� �Q��R+�3~�~��R'�R����3��3}�R}
~ �R���R��T�3��Y�T�f���^.8���4�����`' �`���3�4��`�
�8˟�`��b.8���3�����c  �c���4�3��c�
�8�#�c��cX�c��>���ChaCha with 20 rounds�Ǩ��fX�d�e�213�9;M��h�(����<(	��2���!#���2�2�	��
�:HH
��2�2���46����2��2�
��
��H����2���!�(*-/8�9=?���2���
�5I��.K��V������_����^����=�����[Ũ�� ^����!X���"���"^����#\���#]ά��$���%���%]���%]ɮ��&\����']����(K���(���)ޱ�)�X�)����)*����)&Ҳ��*&Ҳ��*+��8�+�}�+���+Nݳ��+6���,���,<����-'ǵ�-���-6����.+Ķ\�f�3��a�R������/�/�������results������*j��<J�2(�.�3���!#���3�3��.�
��=(�.�3��_�!#�����3��^�^��^��[�^���[����e�S������.�
�A>����]���4n��9E����p�] �]������"�CX�]0�]����Pp�]@�]���(�\�4��_�!#�����4��^�^��^��[�^���[����e�S������\�
�h ��H�\�4�4���46����4��4��\�
�� ���\�4���!�(*-/8�9=?���4��\�
�i!�"�C�� �5��_���4������5��^�^��^��[�^���[����e�S�������
� �����"�5����H� ����U`�8�������-@�����5��5���
� �˟���!�5�����H� �����s#�C��&H��5��5��
�� ��#���C��$�5��/ �6�����H�/ �/����$�C��0&H�0�6��6��
�� �0��1�6���}~�����2@�2���6�U��2�
� �2��3@�3���6�P��3�
� �3��4*P�4����6�����4�
� �4��(�4��5�6�������:"��6A���7���7H����8K����8J����9��`�:���6��:�
� �:��C1��@A���A���AG����BG��`�B��`�C���6��C�
� �C��X�C��K)��E���F���FH����F���G���GH����HI����HF����IL����JE����JG��P�K���6�P��K�
� �K�0�K��N��M��P�N���6�P��N�
� �N��O"��O��@�O���6����O�
� �On$�C��P�6��P'�6�����Q# �Q�5�6��
�� �Q��R+�6�����R'�R����6��6��R�
� �R���R��T�6��Y�T�g���^.8���7�����`' �`���6�7��`�
�8˟�`��b.8���6�����c  �c���7�6��c�
�8�#�c��cX�c��>���ChaCha with 12 rounds�����gX�d�f�5�ƙ�����h�(����<(�#�5���!#���5�5���
��LH�$�5$�5���46����5��5���
��L���%�5���!�(*-/8�9=?���5���
�M��.K��V������_����^����=�����[Ũ�� ^����!X���"���"^����#\���#]ά��$���%���%]���%]ɮ��&\����']����(K���(���)ޱ�)�X�)����)*����)&Ҳ��*&Ҳ��*+��8�+�}�+���+Nݳ��+6���,���,<����-'ǵ�-���-6����.+Ķ!\�f�6F����D����/�/��������������*j��<J�5(�.'�6���!#���6�6��.�
��O(�.(�6��_�!#�����6��^�^��^��[�^���[����e�S������.�
�QP����]�"��7)���yL�%���p�] �]������$�CX�]0�]����Pp�]@�]���(�\)�7��_�!#�����7��^�^��^��[�^���[����e�S������\�
�x2��H�\*�7*�7���46����7��7��\�
��2���\+�7���!�(*-/8�9=?���7��\�
�y3�$�C�� �9��_���4������9��^�^��^��[�^���[����e�S�������
� �����"�9����H� ����U`�8�������-@�����9��9���
� �˟���!�9�����H� �����g%�C��&H��9��9��
�� ��%���C��$�9��/ �9�����H�/ �/����&�C��0&H�0�9��9��
�� �0��1�9���}~�����2@�2���9�U��2�
� �2��3@�3���9�P��3�
� �3��4*P�4����9�����4�
� �4��(�4��5�9�������:"��6A���7���7H����8K����8J����9��`�:���9��:�
� �:��C1��@A���A���AG����BG��`�B��`�C���9��C�
� �C��X�C��K)��E���F���FH����F���G���GH����HI����HF����IL����JE����JG��P�K���9�P��K�
� �K�0�K��N��M��P�N���9�P��N�
� �N��O"��O��@�O���9����O�
� �Ob&�C��P�9��P'�9�����Q# �Q�9�9��
�� �Q��R+�9�����R'�R����9��9��R�
� �R���R��T�9��Y�L�h���^.8���:�����`' �`���9�:��`�
�8˟�`��b.8���9�����c  �c���:�9��c�
�8�#�c��cX�c��>���ChaCha with 8 rounds�����gX�,\�g�9�����ϗ��h�(����<(�0�9���!#���9�9���
��LH �1�91�9���46����9��9� ��
��L��!�2�9���!�(*-/8�9=?���9�!��
�M��.K��V������_����^����=�����[Ũ�� ^����!X���"���"^����#\���#]ά��$���%���%]���%]ɮ��&\����']����(K���(���)ޱ�)�X�)����)*����)&Ҳ��*&Ҳ��*+��8�+�}�+���+Nݳ��+6���,���,<����-'ǵ�-���-6����.+Ķ.T�g�9�Z�ۀ����/�/��������������*j��<J�9($�.4�9���!#���9�9�$�.�
��[(%�.5�9��_�!#�����9��^�^��^��[�^���[����e�S�����%�.�
��[����]�/��:��!+gz����p�] �]������&�CX�]0�]����Pp�]@�]���(&�\6�:��_�!#�����:��^�^��^��[�^���[����e�S�����&�\�
��D��H'�\7�:7�:���46����:��:�'�\�
�E��(�\8�:���!�(*-/8�9=?���:�(�\�
��E�&�C��4��<��f�?�~�������������������()�9�<���!#���<�<�)��
�,�H*�:�<:�<���46����<��<�*��
�L���+�;�<���!�(*-/8�9=?���<�+��
����,�	������	�<+��(������"$|�	�	���=|�	�	���=|�	�	���=|�	�	���=(,�<��������=3�<�����PR���<�<�,��
��=,��.�:#�%����<�U��U��.
��,�.ڊ<�.��.a,�C�.�:I9.�:%��ď��<�U��U������$�.��y.�:
�ď���.��ڊ���35a,�C�.�;�.�<.I.�<�avx2���sse3�sse4.1�sse4.2�ssse3�%����<�U��U��
���ڊ���a,�C�.�>-A.�>�������������������������%����<�U��U�V
��UڊT�Sa,�C�.�A/Q.�A	��������������%����<�U��U�
��ڊ�a,�C�.�B/Q.�B������%����<�U��U��
���ڊ���a,�C�.�D.I.�D��%����<�U��U�(
��'ڊ&�%a,�C�T�:#%���<�U���#��#��"����+��(����0
��,�0ڊ<�0�T�:I9T�:%�ď��<�U�����p�$�0��yT�:
�ď���0��ڊ�-/�T�;�T�<.IT�<�������������%���<�U��
��ڊ�T�>-AT�>�������������������������%���<�U���
���ڊ��T�A/QT�A	��������������%���<�U��D
��CڊB�T�B/QT�B������%���<�U���
���ڊ��T�D.IT�D��%���<�U��
��ڊ�p�X#J%���<�U�P�5
��,�5param�,�5�,�5�p�YI9p�Y%�ď��<�U�P���}�$�5��yp�Y
�ď���5��ϙ���35�p�Y�p�Z-Ap�Z�����������%���<�U�P-
��,ϙ'�&�p�[.Ip�\��%���<�U�P�
���ϙ����|�X#�%���<�U�P�8
��,�8ϙ,�8�|�YI9|�Y%�ď��<�U�P���o�$�7��y|�Y
�ď���7��ϙ�-/�|�Y�|�Z-A|�Z�����������%���<�U�P
��ϙ�|�[.I|�\��%���<�U�Px
��wϙv���X#�%���<���9
��,�9�.�C���YI9��Y%�ď��<�����u�$�9��y��Y
���9��')�.�C�/���C���Y���Z-A��Z�����������%���<��;
��:�.�C���[.I��\��%���<���
����.�C���X#�%���������<�=
�Ή�=ى,�=�0�C���YI9��Y%��ď�������<�����$�=��y��Y
�ď���=Ή�ى�/1�0�C���Y���Z-A��Z�����������%���������<]
�Ή\ى[�0�C���[.I��\��%���������<�
�Ή�ى��0�C���X#.%�������B�C�U�<�B
�Ή�Bى,�B�4�B�1�C 2�C���YI9��Y%��ď����ժ�U�<�����$�B��y��Y
�ď���BΉ�ى���68�1�C 2�C���Y���Z-A��Z�����������%������ժ�U�<�
�Ή�ى����1�C 2�C���[.I��\��%������ժ�U�<(
�Ή'ى&�%�1�C 2�C�H,I�I	.K�L��R�%>R*�0�Q5�Q:8Q?�PD�PI�NN�%TNYjL^�eH�l�Kq�x�I}~I�I��4�bH��G��F�F�$F�0E��S��^��D��b�D� C��B��B�B�?�\>�a>�?�
=�=��=�<�<<1;�"H�*r:0�8�8>M8D�7J�4R)7X�6^�5d@5j�4p�3v�S~�^�O3��b��2��1�P1�V1��0��-�!-�'-��-��+��+��,�N+�T+��*��)���H�<)
�e''�&$�4,�%2_%8o$>
$D�#J�"P�SX�^`"f�bn�!t� z �! ���������������X�����������=����.���
��	�#.%9*0D5D;JAPGVM\SbYh_e
kqw(}.�4�:�r
�x
�~
��
�y��=���
������#�A��B�N�
�Y��d�#s��BNrand_core::RngCore�Reproducibility�4https://rust-random.github.io/book/crate-reprod.html�rand�,https://docs.rs/rand/latest/rand/fn.rng.html�Seeding RNGs�5https://rust-random.github.io/book/guide-seeding.html�����4https://rust-random.github.io/book/guide-values.html�rand_core::block����	rand::rng�η׷��#rand_core::SeedableRng::from_os_rng������
Random Values�߸rand_core::block::BlockRngCore����|2https://rust-random.github.io/book/guide-rngs.html����׷ٹ������https://cr.yp.to/chacha.html�����߸Security�ݺ���SeedableRng::from_os_rng���ٹ�	rand::Rng�ChaCha stream ciphers�������rand_core::SeedableRng����ݺ����������ȼּ���������������η����ȼּ���������ChaCha, a variant of Salsa20������)eSTREAM: the ECRYPT Stream Cipher Project� http://www.ecrypt.eu.org/stream/�Ͼ������������|Ͼ����������������H���������������I�I�I�H�J��������3f��?�
���nd�:����a⤐v�˗��K�uSžjG�D�H�JQ�0C��C����
��J �����Y����S���N�@��t�@��'P����2)p�fXB���c���4�Lq�jV�OQ�"���	F�m&�F�݇�c{�����?g��&�E+5���5Z90XjQg���ej4�`�3k�){0��pQ�}�v�H�nA�'T�/�k���=��R����y5`-n�%W7�ﴧ��H��$�o�n,H�HE9	`�d��7-�׀��~wo7�{�}�̣>���W��>�!QX�љ�00&���3�8U�Z�&8PL'@�3�c�FN�_=�k��E�vp�
1�C�D/�<2��/*+��6���~_9�d��9=(,���܁x"�0�v�
�u���{4WF�%�,�+Xf��]'#��IdnDFD$����?����_R�&����l�,d��e���o0x(�K��,r����ك?�"y�)���[5�&�7��J�$��*���CX{M\�=3sWq�̇��P�
	��	��?�XWUЭk��7[W��{
R����}�i����L��_���a�K�W
��e�Jz��Ob=�����-�"D�e�Q�?!���H�Ν�L4����B���i4i�&�X��8�*���<n�J���5A�H�b7<`�G,�G���:&���Ȁ��
��).�K0��m��>2�)дG����E�ve�"�;�
9](��Op�i�Aڥ�v.�|x��aM��J>�����OQ����A2t}Z]�F|�o��;�
�݅�ݭ:l�
��Ý%:��J�v�G
�2N~l��~�kt�M6�*�T���� ����)�c1ȋF��[	4�5��LaS5d�چ�wγ8X ��o��f�w��‹6Kȥ��,e�z.��ß�2���0.��������rߪ���}���S��'�e��yJ���9�cN���� Y�_@4U���
M��G�m20�����<g�}��
I��R�NF��ybw'c�#��oq��Vt�u�'	'|x�PX�T��=�?a���L+���'���u���$i�;E��VU����@Y�<As�|�cw����}lbXʿ/)Hc��,&��E����T���4'��^��������~�@���UP�R���hu� ���ǜ�$F!4�vC�Y��;��������eX:<q�Z��Э=)KH�L���o]Z�e��6-�ͥ
��+�K��Y��ԋ��Q��@%�y�3�
ظXn�%>I�6�u�<5,�n�ߖ t��B���+۾��v��e؉�^"V�(�o.�|�`�������ɑ0��		�_�=U�B�2a�K3ey�Tk�Q틐�c������`���tB��"�~�󚙺��I����M��Z7�%M l����lZ0�ۊ�@nd�������<Q�t�"i��mXk����P�&0o�)2b|5;���Ԟ��%^�NsV��G[v�Sd�F��P[�H¬�]�e�}u���+}mdlC�H��b��O�����((^�IGyP��#��d�0uԦ���I��*�	��1�5��*��J�((NJz�
-�B��<"�Q�!��p�#&w��U"�Q9��`c��u4��M�LiS��$0�31Ϋ1����O�c	�d;�h9���0�3v���8U�2�,l:����(��:���Ȩ"�bGߘ(�9��ښ@0�;Ġ����'��χeҎE1��z����Q���T��0�-!	�{���44.�4��nMמ���¬x�ݖD����_}�b
��'4�Et��8zo�@ǚB���p*��*��؎&�o��GѦ��"r�D9+q�=r*�|qD�'46��� �4�L!@��2>����U=�Ѧ�<kW���������|�LG
������|L��#�Ѝo��40@=_XD�
�#
��~��{�^�H�SpPu����[>�E������~�*�p��?z����C	_�ӯ�]��2���'R��ކ�.�NWN���Q�"M�����/
�T��[H8�͒�Nǡ��a#����"�C�����!c��K�Z&��N�q���>=����-�W*TD�EU[=&��,��4�Wr:�L��ùY>�J1���5r��T���:��8b�STnR�Z{�8�MAB����'��Վ��]s[���}Z�l8~N*�[�ZH�Rw�P�GQÑ��w�[��S!��?f���Y��H�z�א�3�Y����
G��m�}f麒D�fK~I�����7���F�Q�ԭ_��w�P�g�<�$yTևOX$^8ҌjC�$�c��R`a���_-4I��� �
���R%��)F�Z��~c3S��\�d��h�9�<��,�E��&�J_5B��U�XU�R�W�z�
J���m���pΣ}��uJ
�p�z�zJ��]3��_�����B���~��Ԙx�*i��-/����+�G5O��ͼ��\���+����!%����l+滤+?�!W".�_�w-�X�|�mґQ��/�K�}9�����os#s���Lex�3*����y�nAֵ,��l+y��/�_f��
L���@�%?(�5wWM��[��1�F9ϝ؎����y�L�M[��QZ�7u2�Nt2�;x�l�
d���1��B;C��!H���
˺�2��J�����=�;��k,'�'��B��]�����޲�z�F7 �qG:�g�L�N;�����{X�iȷ7)��%J��[�+z��������B�d�^1W&Y�I_�E] 缐���<0-wu��w!R$�9�����Ro�
snX�\[o�X�Qo�4
�s�_F��i��״w˺>�.��A�@��Y:��㖧S~���>ڌB�!t���#�1��Ni�e*3:���w��{�F��U�~wa½?� (P�F��C��V7�S�� ԥ/��
��v%Ow���Z�qݍ1����z�����)��q�&F�
Hk@|E��6M�3{|��-.���ܿHe�R^�U/�+�b�8\�[���]�!��klR��YT׍���}מ-��չ�q-��2�aMy��̠��X�=�3��Ĥ�{�=\�(���R��»�c��,9
!4ȋ��LY��"����Ag����wh�S<�naÌ|8"�+V&$W u����s��m͊�Fvن�s�Zu��ϤUT�)sK†B;�!�����h��=�=��HWoB��!���Q̓����@Zg�{��<.!{�D��NqQ O��p�̾���1��^�Y2�=+�)e� ����d���(�_g�Pt�L�ڋ/K�#R���q'�x["�#֔���'\�?��+�T7��2����(>.�M�|<�+�u��Lb��^�?<]��R�B�Üy;|ǒ��갢��3��E!j�8KO��;Ӏ�V�
�8\Ŝ:?4a^��No�̫l�[Է����i:$�JXG�R�9��TA��Z��jb+�†x����i��E6=T�hS`���C��	�qL�r<c��h3�h^�Լ�`���O�i<:M�}#xr��2��;�|(]S�Ҥ�6� ��`"�n�c�� q��9�wQ|B�V8��1�����˔���%~%���?D'��M�Yer��sU`bY9]�_G���j���ֈ�#R�=R��q������PZ����%�S9�ʬAd���7�3�
��L��|��S�l��D[k�C]�ܷ	򕂤�-����j���8������F���K�4_O�9k:�T�D��j�.��x��0w<����xҮ �kQ0Ζb���o���[߂,X�gb>�[[��K�')���Y���bKVF����~yw4S�r��bLk���}F�W��M.ז�\�/��|���"y76p�A���6a���G�6�
M���w��9ȷ�
�=-ƣ5!��*����!��(�]J�D��$`�)]<Q�s�̢:R�����Ɗ̹η����P����i���0��?���f:�.�o�A���d�\Ӄ�x��f�=0V���ƹ)h��w+��bӐ��
|܄�a��6a42m2�|D�;?S�.����K_�-�����3�)��@����	ڄHoT���6�n"�k�1��=
�l� �'1"�o��|�����HXlwx�tڜ�%l�:Bz��:�zw�@�mS�@&��Z����_z^����/��k������^�=�^|��]ŭ��L��f)y���CzJ�u�5�u���,��~Č�R_���A5�>�����Ḝ��j���+�!.�3���as��>x���~U�~�)P����Td�=�wM1�`��Nѹ��Wy/��QE�+�M��H���ͼw+�!J���]Qs��Hv�Bskj���<�m���%���-kx�0|�<��4���D������!y��<U�Y��n�ީT!�����G)�g9�x�LM�b�c�e�g�2E�E��ZK5�E�F�FG�G�GHRH�H�HGI�I�I)JPK��M�a�u�������������t���J�j�������(����*�����]����R�����q�������g�����	��=�f�����&�x������F�8�����3�r�����
��G�����4�������#�6�T�����C&�k�����<�Z��7�c�������g�z����������h�������>�b�������!�L������m�������I�>����#�A������#�3�]�����J�������9�L�j�����Y&�������L�j��G�s�������w�����
�+�����x�������N�r�����
�1�\�����(�}������Y�N��� �3�Q������3�C�m�����Z�������H�[�y�����h&������[�y�'�V����������������:��������2�P�������7�U����0�J�d����"���n�,�����?���s�ʎ�1˴� ̂������x���l���G���^���F�������=����.E�
E���+�;�SG�G7H�HI
JV���}�s��(������#�~��5�������3�F���d���L�,���w���
���t�J���	������/����K�������I�\���z���\�<������������Z�������,�?���+�[�������X�k�������k�K�������,���B�����G�����

%)



















-E�E�F�FGsG�GgHI�I>JTK��Q�e�y�������ɂ݂����������=����?�ه��r���C���Պ����
���njB�|��<���i����[���I����]��u����g��F�p��m�
�<�h���Κ��J�ɜ����ޝg���&�b�ڟ.���f�����a�ãW���)�s���������}��\����}��L�x���ެ��Z�ٮ�����w���6�r��>���v���q�ӵg�Ƕ9���
���ĸ���+�k������,�[�������ʿi��������c��������4�N�h���6�������:���^��Ȋ�K���q���?̖����-Ό������[�������Z�����:���U�K���T5�E�E�E�E�F�F�F�F�F�F�F�F�F�F�F�FG]G�G�G�G�GHHAHNH�H�H�HBI�I�I�IJ$JLK�������#�)�-�1�5�9�=�A�E�I�]�q���������Ղ�b�o�уރ9�F�e���o�}�Յ#�{�Ȇ�%���������=�J�X�����������ĉʉЉ�N�����k������a����������8�R�`���Ѝ!�r�������@�2�������-�l�������A���ȓ$�.�����Ҕ�4�R���Օ=�f�ʘ�7�X��2�P�^�{�����b�x������������b�����8�]�y���О����8�F������g�ؠ����C�8�������;�}���
��-�W���ޥ:�D���Ǧ�4�J�h�ʧ�S�|�ڪ��G�h��B�`�n�����ɬr������)�������r�����үH�m���������,�H�V���ϱ#�w��	���S�H���
��-�K������,�=�g�ķ�J�T���ָ��C�Y�w�ٹ��b����
�V�w� �Q�o�}�����ؾ�������8����������-�N�������2�S¼���,�F�`�zý���ēġ�F�S�a�g��%����Ɠǡ�*�8ȷ���l����ʇ�*˭��{���r�ͅ��q���R�_�e���?ЏН� �-�;�O�V�����0�>ҪҸ�U�b�p�w��ԇԕ��'�5��������ְ֢־�=�K�Y�]�b�g�l�r�x�}׃׈׎דטםעק׬ײ׷׼�������������������������
����$�)�.�3�8�=�B�G�L�Q�V�[�a�g�m�s�y؁؉؏ؗ؝أةرطؽ��������������������������#�)�/�5�;�A�G�M�S�[�c�i�q�w�}كًّٗٝ٣٩ٯٷٿ����������������������	����!�'�-�3�9�?�E�K�R�X�]�c�h�n�s�y�~ڄډڏڔښڠڦڬڲڸھ���������������������������$�)�/�4�:�A�G�L�R�W�]��E�E�E�F�F�F�F�F�F�F�F�F�FG`G�G�GHCHRH�H�H�I�IJ)JPK�����&�+�/�3�7�;�?�C�G�M�a�u�������łق�d�t�Ӄ�;�j�����څ(��͆*���ć����?�]���������lj͉��?�l������������=�f�Ս&�x�S��ېE���3����G�Γ)�q���ԔT��B�k��Z�
�7�c�������7�������ȝb���!�L�ğ�m�P��ޢK���A���%�]��?������j�	�X�����j��G�s���ˬ��G�î����دr���1�\�Ա(�}�`����[���Q���5�m���O�������y��g����y�)�V�����ھ��V��������P���q�����0�J�d�����"���H�n�,�����?���s���ʎ�1˴� ̂���t����x���T�l���G���"�^���F���W�����=������\�`�e�j�p�v�{ׁ׆׌בזכנץתװ׵׺������������������������������"�'�,�1�6�;�@�E�J�O�T�Y�^�d�j�p�v�~؆،ؚؔؠئخشغ�������������������������� �&�,�2�8�>�D�J�P�X�`�f�n�t�zـؤَٚ٠٦٬ٴټ���������������������������$�*�0�6�<�B�H�O�U�Z�`�e�k�p�v�{ځچڌڑڗڝڣکگڵڻ������������������������	����!�&�,�1�7�>�D�I�O�T�Z�_��FG)G�G�G�G�G�GH+HKH�H�H�H0I\I�I�IJ!J2KY�m���������т�"�l���ۃ�C�R�Ą�I�x����d���� �n���b����G�S����J�����R�y�����G�o����������$�K�[������b�Ǝ펏�&���������[�z�ڒ�1������|���”�/�B���ŕ-�M�{�ۘ'�H���H�Y�t�����L�s����	�q�����G�p������F�q�����ܞ��0�A�|����U���堍�'�������+�j�����G���Υ"�����ئ$�E�X���ۧC�c����7�X���%�X�i�������\�������������W�����ʯ,�V�����Ͱ���@�Q������e�̲����7�-������(�;�z�����'�W���޷2���ϸ�3�T�g�ù�R�r�����F�g�
�4�g�x�����Ⱦk������(���������
�%�>��������C«����%�?�Y�sÚ����sĜ�
�P�\��� �����vǜ�
�3Ț���T�����q�˗��e̾�9�|���Tβ��\���)ЀИ���*�6�G�����"�9ґҳ� �_�k���
�pԐ���"�0՟��������ֹ֫��F�T��FGGG�G�G�G�GHHEH�H�H�H$III�I�I�IJ&KS�g�{�������˂߂�f���Ճ�=�L����=�r����X������[���O����A�M�����D�����E�s�����:�i�����،���C�U������U���玂���t�ԑ����S�t�͒���w�����v������)�<������G�r�՘�B�ݙ�?�S�k�����>�m���ԛ�c�����9�j������@�h�|���Ӟ���'�;�s����G���ߠ���z�ݣ��%�a�����5����������Ҧ�?�R���է5�]����)�R����O�c�{�����N�}�����s�����I�z������P�x���İ����7�K������W���ﲏ�)�������"�5�q����!�E���̷$���Ƹ�%�N�a����D�l�����8�a���.�^�r�����¾]������"�����������8�|�����
�=���	��6�P�jÅ�����iĖ���J�V���ƿ���mǖ��-ȑȺ�Jɫ���h�ˎ���\̴�"�v���KΨ��V��� �vВ���$�0�>������3҇ҭ�	�Y�e����gԊ����*Ո�������zֳ֥��@�N��F	G;G�G�G�G�G5H�H�H4I}I�IJ6K[�o���������ӂ�R���)�T�Ȅ�M�z�…�h����"���t��U����L�����V�{�����K�q��������&�O�]������f�ʎ�*��������!�_�|�ޒ�3������~���Ĕ�1�D���Ǖ2�O���ݘ,�J���M�[�y�����Q�u�����v�����L�r�����!�H�v���ž����5�C������Z���砒�,�"������-�o�����I���Х'���Ŧڦ)�G�Z���ݧH�e�����<�Z��'�]�k�������a��������������\�����ϯ1�X�����Ұ���E�S������j�Ѳ����<�2�����*�=�����)�Y����7���Ը�8�V�i�ȹ�W�t�����K�i��6�l�z�����ʾp������*����������*�@������� �E°���*�D�^�xï��uĞ�!�^���"�����xǞ��5Ȝ���V���s�˙��g���M���Vδ�3���+ЂК��8�L�����$�;ғҵ�5�m����rԒ���$�2մ�����ֻ֭� �H�V�GuGhHI�I?J�������
�����>�����A�����t��������}���=���j�����\���J���^���v���h��G��n������K�������c���/���g�����b���X���t�������~��]��~������[�������s���?���w���r���h��������
���,�l� ���.�����j���d���������8�������<���`��Ȍ�M���s���A̘����/Ύ������]������\�����<���W�M���TGvGiHI�I@J�������
�����>����B�܇��t���֊�Ȍ}��=���j����\���J���_���h���n�Ϛ��K�ʜߝ��c�۟/���g�����b�ģX���u�����~���~�߬��[�ڮ���s��?���w���r�Եh�ȶ���
���,� ����˿j�d�������8�������<���`��ȍ�M���s���A̘����/Ύ������]������\�����<���X�M���bGVH�H�I-J�x��n�����ޅ,���ц.�ȇ��a�p�Ċ����k�ڍ+�}�X����J���8���L�ӓ֔V����\�����9���͝��Q�ɟ�r�U����P���F���b���l����l�ͬ��I�Ȯݯ��a�ٱ-���e����`�µV���r�����{���{�ܾ��X�R���s���%���t�2����E���y�ʔ�7˺�&̅������{���r���J���e���I�����!���D����y����6@IS������H[�,\��&1>����&09CP]��n����g���PZcm������bu�.9Fv��@KX������GHMH�H�I#Jn�݃E�����I����R��~�^�,�a���� � o4/!Y'�'(c(@)	*g*�*+]+�+,�!�!&"y"�" #q#�#$l$�$%e%�%&`&�&'_,�,-f-�-".�.�.1/�/�/*0�0�0%1v1�12q2�23j3�34� .!�4�!�'
(b(?)*f*�*
+\+�+,^,�!%"x"�"#p#�#$k$�$%d%�%&_&�&'X'�,-e-�-!..�.0/�/�/)0�0�0$1u1�12p2�23i3�34n4�G� &!x!�'([(8)*_*�*+T+�+�+S,�!"p"�"#h#�#$c$�$%\%�%&W&�&�&P'�,-Z-�-.t.�.(/y/�/!0x0�01m1�12h2�2
3a3�34f4� *!|!�'
(_(<)*c*�*+X+�+,W,�!""t"�"#l#�#$g$�$%`%�%&[&�&'T'�,-^-�-.x.�.,/}/�/%0|0�0 1q1�12l2�23e3�34j4�H;I�I=KY���0���Q����l������|������Z�O������j�����.�!�����c���������7�1���V���{�Q�&������_�����1�'�����t�����1�.���M�A��f�����a�6������o�����A�7���������A�=���\�P��u������%����z�*����}����[���x�˞�
�l���V���[ι�<���0Ї����)���>���w�������%�+E�EG�GH�HGI�I��J���q�g�	�������r���
����o���'�:���@�Ә@����k�~����h�>������ݠ�#����#�3�����Ц=�P�ӧV��P����{������x�N���
����� �3����3�C�ʷ��߸L�_��e��_�'������� ���6�����;�����IG��]�%���s�5�����D�����=G��Q����g�)���v�8�����Y\cgkx|��������������������				 	'	.	2	9	@	R	]	a	e	i	m	q	u	y	}	�	�	�	�	�	�	�	�	�	�	�	�	
 
,
4
F
M
a
h
l
s
w
�
�
�
�
�
�
�
�
�
�
�
�
/37;?CGK[lrv}����������������0CTelptx�����������������


"
*
.
6
>
J
O
]
m
r
z

�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�

!)19AINRV^bjn�����������������#(08=EJOW\dimuy��������������������!)-59INV[chz������������������
$,1>GOW[cgksw��������������� 27IN_dks{�����������������!&+38@ELQYafksx����������������������	!'-39?EKQW]ciou{�������������������#*18?FMT[bipw~������������������
&-4;BIPW^elsz�������������������
")07>ELSZahov}������������������	%,3:AHOV]dkrLG��_�'���u�7�����F�����8H�H�IJ]�^�_�`�a�b�c��G��������u�z�*�/���������������$��7���ȔH�˕�N��������z�~���N�S�
�����������������1���M�ԥަ^���^��������������^�c��"������������A���]����m���m�ξ��.�D���I���VKh�G� ��G�|�$�W����_���]������E�
�m������U��|�����`�$�����7�����:�N���=���o����&�4�����ֽ�J�X�H=H�H�IJd�������4�ƍ���)����<�Ó͔3�M�Е�S���w��������X���������6����R�٥�I�c����c�Ĭ����$�����h��'�±�,�F���+�b���X�r����r�Ӿ����3�I�����N���%<'*058
$;=h)247#:(
+169��t(�}�J�core_intrinsics�derive_clone_copy���f��?����~��.������Z��f��?��$�6�����\2��f��?��Fw��[�����gb���Q$f��?�Z��:P���(�\}����fmt_helpers_for_derive��_�_f��?�a�5-
`TT�,�e�f\��	derive_eq�����f��?��s�]�yQ���%��f��?�i�KJ=~�.(�.������_�_f��?��\a�&�Ӂ��7���V��f��?�p?��{�"���\���f��?�6v��Y��/�\
��ܰ����f��?�z?��.�`Ӂ��=����f��?�#Jux��7��y��ܰ����f��?�w�_�3n�.�H����ܰ����f��?��M�
K�P������f��?��l��c�y��!(�.o�����_�_f��?����8���\5��f��?����a��@c�"�\���ܰ����f��?�=�W��^�������ܰ����f��?��_��5�=d���.���f��?�Z\�蔤˪�(�.}�����_�_f��?�
Yb���X����ff�$f��?�P�#�Hhp��,H���O\�����f��?�)\x�tD�7��\���ܰ����f��?�cԿ�6�*&t.(�.;������f��?��˩C�Ni�����f��?�7��,1�j����.F��f��?��3-����/H�\�����f��?��J��(���H�<�����f��?��:9}7C��%�p�����f��?��T��+T�t!(�.l������f��?�f>e~���y��	�-�Ro��8��f��?����PHu���.}��f��?�*z�)C�ZW�"H�\=�����f��?�(y�_��?���f��?��X��W���H�������f��?���[y�OY���eg�$f��?����~�Vu/t(�.�������f��?�X���y��qt,(��������f��?�!�%N��K������f��?��6��J�c�H�\������f��?��R"\����0����f��?��LAA�B�V�/(�\������_�_f��?�&5Zw�p�Ӂ��9���f��?�y�Yy�rt(�)	������f��?�2�=/h�tܞ]	������f��?��3F��rӁ��B����f��?�i�
�WK<Ft���	������f��?��J#�֙Ӂ�o�gx��f��?��oh3����"(�\B	�����_�_f��?�Ѕ�|��$	Ӂ��5����f��?�`��`c��d����.����f��?������q$ma�V�V^V�V�V�VfV�V�VnV�V�VzVNVVV�V�VZV�V�VbV�V�V�VjV�V�VrV�V�V~VRVqa�VvVua�V�V�V�V�V�VG^�^�[�W<_\�a�_ya�X`�Y�`4Z�]�ZWn^[�^q[�Wj_\�X�\!Y7`]�Yz]cZ6a^�ZeWC[�W_�[CXI\�X�_�\PYm`F]�Y�`�]a�V^^�^�[�WZ_�\�a�_�aY'`�Y�`SZ^�ZUW�^3[�^�[3X�_9\�X�\@Y]`6]�Y�]�Z]a7^�Z�Wa[�W,_�[zXo\�X�_]}Y�`j]$Z�`�]&a�hODHT 2��~�)P���#s���L?�O�������G�P����i��STnR�Z{�HXlwx	?!���H�MFvن�s����9=(,�/Ν�L4��N����/�Ġ�����
��J ���n�ߖ t���'	'|x����J�((NJ�bGߘ(�9��I��*�	�%�,�+Xf�3�'4�E�ex�3*���@��).�K0W�[߂,X�g�o��40@=_��)�c1ȋFka42m2�|��<5,��Ҥ�6� ���"y76p�A�%���?D'����ښ@0�;�SžjG�D����
G������P�&0�H�JQ�0C�<"�Q�!��mґQ��/<�W*TD�Er��T��q�jV�OQoq��Vt�u�9�wQ|B�9k:�T�D��� �kQ0Ζ�b>�[[��K�{�=\�(߄�@�mS�@&
�/�_f�C�\�d��h(���ej4��;x�l�
Ki��mXk��X�Qo�4
b`c��u4����f�w��p�<�$yTև naÌ|8"ڋL��|��S�V�
�8\ŭ �4�L!@��tB��"��\�/��|���g�Pt�L�ڞ���8U����~Č���5A�H�bS�Q틐�c����t�@���uJ
�p�z/��R��…bӐ��
�;���Ԟַ~�*�p����F9ϝ؎�G�d���(�_�5�>�������=
�l���Ȩ"���8X ��ooU����@Y��E��������9����_v.�|x�^PX�T���r<c��h3�cw����}l�c���4�L�No�̫l���|������'R��ކ�����¬x� �
���R%%=�3��Ĥ��R�B�Üy�<kW�����.�3���as-kx�0|�*����T�؍Zu��ϤUT�˺�2��J�OI����M��l�
��ÝeO��;Ӏ�������؏�^"V�(�o��i��״w�d�3�
ظXn�"�#֔��������`����PZ����%�F�Q�ԭ_+�M��H�$!y��<U�-�l��D[k��?f���Y-���sWq�̇�A��T���<��4���D+�D/�<2�,��~�@�����c��,9
������|�L����l8��Y����S	�����OQ`�vC�Y��M��[��1F��<Q�t�"�B;�!���Ȓ�j���ֈ��C]�ҎE1��z�
snX�\[oa�����Ɗ���w!R$^Ni�e*3k�:?4a^���
M��G{��R`a��#���os>�$�o�n,<q�Z���@��Y:f�?<]�ŧ���eX:�;�����{V�/K�#R��`"�n���#R�=R��x�LM�1��������i:$�J�e� ��Ԝ�c�� q���ك?�"y�)<����x��m���%���)�^1W&Y�I[+���'����|(]S��Ԙx�*i��3Y2�=+�)�{��<.!{��bXʿ/)Hc����<0-wu]d���1��L���0�����/��k��[	4�5�l�_@4U��ze��6-�͚��V7�Spi��E6=T��H�HE9	`� ���6a���c	�d;�h9��wM1�`�!��TA��Z�"r�D9+q����E�veZD��NqQ ���w�P�g�U"�Q9���y/��QE�#�w-�X�|�;��3�Y����K_��2�aMy��x��f�=0���E!j�8K��n"�k�1��<n�J�RL���o]Z��{0��pQ�}�չ�q-��O��p�̾�:���w��{l��H�z��
Hk@|E��w���+}md�D�fK~I���K�}9��=���~yw4���B���O_=�k��E�*�%?(�5wWE{M\�=3@����	�u����[>���$`�)]<��W
��e�I]�e�}u�_5B��U�+�h^�Լ�;|ǒ�ũi<:M�}#���	�qL����'��Վ��((^�I�G5O���5+����!%�7�=-ƣ5!��M[��QZ�I�*����!�(P�F��Co�_���a�KH��C�����"�;�
9][��� ���jlC�H��b����U=�Ѧ�����\���6�F7 �qG:T�`���O���;��������,&��E��u��领�?���f������-�"K�Nѹ��W"��ͼw+%�,r����;�Z7�%M ��')���Y�V���ƹ)h�‹6Kȥ��q����Q��i4i�&�P��B��]�R����ɑ0�M���w��Aڥ�]�z�����)u��m��>2X�h��=�=�J���9�cx$����?6�"���	F�,d��e��9�݅�ݭ:d?z�������}���S�v�!��kl}�!���Q̓��~��{���+�!�M�Yer��F��U�~m����y5`����}�F�NF��yb��v��e؉��ܷ	򕂤��!J���]&skj���<�(nd����̲��P�
	�B�LaS5dmjC�$�c"0�-!	�{������=�P+V&$W��"�C�����Z�����$F!4�p*��*���E��&�J*�_}�b
�����>ڌhܿHe�R^z�_z^�2�,l:�������%~�z�
-�B���G�6�
�CzJ�u����~U�LY��"�����p�#&w��|L��#�Ѝ���a#����؎&�o�������,�o0x(�K�:�
��+�Kޛd��7-�׀!��00&��&vp�
1�C+���0�3v�qݍ1���t��44.�� �'1"�oD�'46�������7����:��8b�
OX$^8Ҍ!���=��R���(>.�wa½?� n����@Zg���8�MAB���y�nAֵ,A�:BzIdnDFD53�c�FN�)��)F�Z�&����H���
I��R~�P[�H¬����bKVF���M�LiS�Qs��Hv�B'D�;?S�.��>���W��$5Z90XjQg��ùY>
��(�]J�D�����_R�&7.�|�`�����s�_F�c��Lb��^���sU`bY9�|܄�a��6�WUЭk��7D4��nM����HWoB��:�.�o�A���4�Wr:�L	B�!t���i��܁x"�00�K3ey�Tk�,e�z.��r�f)y���=�^|��]7�{�}�̣#Z�l8~N*��2>���&�7��J�$>k���}F�W�����l�8�G���:&�U���B�dZß�2���0s��XG�R�9�@ǚB�����4'��^�!4ȋ�߇�a⤐v���
��v%Or'P����2)�1����O��~�󚙺����9�<��,)��(��:���tڜ�%l
��}מ-�S�r��bL��aM��J>_���Q�"M���J1���5�%>I�6�u�3��_����1�G
�2N~gḜ��j��w���Z�sT!���/%:��J�vfG
�������=U�B�2a����F�����%J��[�X7u2�Nt2J�-.���y
���nd��x�����=����-Q�s�̢:R�s��m͊���j�.���m&�F�݇��GѦ�����q�&F�v�̠��X��d�0uԦ����͒�Nǡ0�ۊ�@�����޲�zS5�u���,m�}f麒X��8�*�Q��!c��K�-����j��]��2���Z&��N�N���� Yy�B���~��2ŭ��L����N�@
갢��3�������^��zJ��]0�]'#��4�Td�= �~c3S�'�v�
�u�1��~wo"�g�L�NU�3�
������rߪ�u!H���
N��:�zwJz��Ob=J���y�L�HRw�P�GQ���K�u_�E] 缐\[��S!�w'c�#��Q��@%�y����q'�x[��Э=)KHӘM6�*�T�iB���+۾�;��k,'�'Q�U/�+�b�{�!W".�_:��M.ז���m20��|�#�1��jxr��2��;�`�3k�)��{4WF�2�E+5�����1�5��*�6M�3{|�x���8������~_9�d.�K�4_O��x��0w<�����<g�}}��w+�����3�)��@��>xp�fXB���
B;C��M$i�;E��V�]�_G����v�H�n�_-4I���$�&8PL'@�(�%^�NsV��.�NWN���UP�R����R��YT׍�~�3�8U�Z'-n�%W7��>�!QX��%�[�ZH���d�\Ӄ��t}Z]�F|bo�)2b|5���jb+�´[v�Sd�F�D�e�Q�L�'�e��yw��l+y�BY��n�ީ.�Ro�`(��Op�i\�<As�|���)sK†�t��8zo��[W��{
RE^�H�SpP���Ȁ��
V�
L���@D�[Է����+z�����Y�q���>i����L�G u�����XD�
�#
��8\�[���]|�wh�S<���Ad���7�R_���A
�T��[H8�̹η�����Ñ��w���㖧S~g�V8��1�'��χe�=�?a���L�C	_�ӯ�M�|<�+�u�+滤+?9�� ԥ/��q�
J���m�-�'\�?�Ԣ�چ�w�n�ݖD������]s[���}�)дG�Y����A2a���1��^̚��9ȷ�
��HoT���6�S9���X�iȷ7)Wl��~�kt�h��		�_����pΣ}�.��*���CX?f��?��Y��ԋ���7<`�G,ThS`���C�:����/*+��6�-�	��?�XC�c{���A�'T�/�k�Ag���l����lZ�XU�R�W�z,U[=&��,���$0�31���o��;�
c�=r*�|q�-/����+�4���[5�=b���o���GyP��#�����G)�g9�0�q������+�T7��2£.�����t��?g��&�>�.��Aehu� ���ǒ�R�
���@#w�=���<���lKP���b����`t�����^%K"n3/#��?E �������X������L�������!M"B(:!ZK%o�Z����4�����U�5��������C��m)����b �`��Vm��b1�X�g�=a����k~f/�~���U���O���n��oU���6��&6H���CY<~9K���l��*YA�NHl7e7]U/mo5_��q��k"BV�&)([dD?�������7ER��#o���9�����b=)pQ
�e��wjji�A$C�C��F1:\r5KRf)X}Px����-��82���������3Z
�����qJ�����^�M�������%��hD>r_����=��k�@2|v��
n+
m��n:��P^b
��}�p�����fW��A�����G�!����%�f.P@xOLQ3+e,�4�b�WS�������;�������1�vBk6��Iz��9?01DR���.N������f�W�2	c`+�����az
%HF/|��f?IGk_FFx7|c��o�@��};mn7U~���)xN|	�Ax)r\)!�����V���U3���"�~Z/��������kU~�&�w���5t@.Q
v+XJ2��o����e����'f�Q�G6n��&����}:c?LGE;�X0hP�����mr����
���������)w�CceKEP����� ��=������������O�%5Fr�,����Ic �c��.�q��@��@�7'}�;��i����(��:�H
�N�<�-�i`t/s]Rqeh2Nx>h ��rk�+�k7g��p�+y��z�}�wh�}�|>����atB<�����{�T|��OC�����z)���(���� dO{j.J �sN��?������2&:��y\���j����gp>��Zf���������e�������LZ�]�,���Y}��������!Y_,Q5]-=���{g8HQShEb����at c���R�
���@#w�=���<a/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.9.0/src/chacha.rs� N��։i@ϥ�$���2ECAA$(@2?YK ||||||||$$''($;"X("
O+C.
-)<7
,"5:
0_hgFdgagef!ffefT 3//4W?E0?4 !)
+"5:.
',$,$9+
dTNUXW1(MH@DQP.WWANTT@L:Y'U,UVSYRT87,2+'.01/
*22.
6698
#")D<
"5>&K
&1ab,K,  =d=:,04=\309,0

+7)'d554>>>RRQ$$$:::!c)Sb`c`.�=5$c3071%%K2&&!
``$'&!
``$'%Kc2
&&!
``$'%Kc``$#&23
&"
'703#&"
'74!';*<<<)<'c2*9&&! 
``$'"2%&aN'KP(2B+&&!
``$'%c2%:
9
?:
+.@QK&4, @S>&4%@++"A<:
J]��N�
�x�B_/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.9.0/src/guts.rs� ؙPv@�"���A�7'p�G�32ECAA$(/b$.,52## """K2222H(((J(((7 8F(2:)3.:%3)0NF$;G'IEEE0@D!L.!!G'aJ)$
I44426 : : U9:::6O2YYZ"""6

F0<.=0T.00!$$"e=#)B377!
P77;!:Y%A�����N�Yy����_�^/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.9.0/src/lib.rs� ��߂�+L 3~I'��� j2ECAA$)C.QM O:$O7"LJLN!GB.$AP>P@;)L/+">'OM:LJLJ5$,F@CQ@:(=+
S"/�Aw���>�Ff�Ё�\g���N�x86_64-unknown-linux-gnu�����_o
l0�l����rand_chacha�-b1215e313103b90d�f��?����	�6��%%����#��&r���	����������������������	��������������&���������	�����������%�J
�����i�i���trust-end-file