📄 libzune_core-757da2fe39e7dcf1.rmeta
/home/palash/git/iron_learn/target/debug/deps/libzune_core-757da2fe39e7dcf1.rmeta
Language: rmeta • Lines: 3920
rust
5�#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�log���<��,�|�serde�,��<��<������
__log_enabled�__error�__warn�__info�__debug�__trace�	bit_depth�to_depth�>bit_type��bit_size�
bytestream�reader�	ERROR_MSG�ZByteReader�#�#stream�#�Mode�'BE�(
'LE�*
,�,read�/�/�
/consume�/�/rewind�/has�/get_bytes_left�/�	/is_empty�/get_position�/eof�/	remaining�/get�/peek_at�/get_fixed_bytes_or_err�>�>>>/get_fixed_bytes_or_zero�C�CCC/skip_until_false�HF�/remaining_bytes�/�/
read_exact�/set_position�get_single_type�O�Oget_u8�O
get_u8_err�traits�SSSZReaderTrait�Vget_byte�V	get_slice�Vget_len�SZ�Z�Z�S^�^�^�Sb�b�b�Sf�ff�f�f�Sl�ll�l�l�Sr�r�r�writer�vv�
x�
y
x�
{
v�
vZByteWriter�~'a�~buffer�~�v���write��	write_all���
�
bytes_left����write_u8_err��write_u8�����	������������
vwrite_single_type�
colorspace���num_components��	has_alpha��is_grayscale��alpha_position��ALL_COLORSPACES������decoder����decoder_strict_mode��fast_options��cmd_options���new_safe��new_fast��new_cmd���
get_max_width��get_max_height��get_strict_mode��get_use_unsafe��
set_max_width��set_max_height��set_use_unsafe��set_decoder_flags��set_strict_mode��set_byte_endian��get_byte_endian���inflate_get_confirm_adler��inflate_set_confirm_adler��inflate_get_limit��inflate_set_limit��png_get_confirm_crc��png_set_confirm_crc��png_set_add_alpha_channel��png_get_add_alpha_channel��png_set_strip_to_8bit��png_get_strip_to_8bit��png_decode_animated��png_set_decode_animated���jpeg_get_max_scans��jpeg_set_max_scans��jpeg_get_out_colorspace��jpeg_set_out_colorspace���use_sse2��use_sse3��	use_sse41��use_avx��use_avx2��use_neon���jxl_decode_animated��jxl_set_decode_animated���>�encoder�����>���
�	get_width��
get_height��	get_depth��get_quality��get_colorspace��
get_effort��	set_width��
set_height��	set_depth��set_quality��set_colorspace��set_num_threads��
set_effort��get_num_threads��set_strip_metadata��strip_metadata���jpeg_encode_progressive��jpeg_optimized_huffman_tables��set_jpeg_encode_progressive��
��DecodingResult��U8��
���U16��
���F32��
�������Level����
��Warn��
�Info��
���
�Trace��
������������BitDepth��Eight��
�Sixteen��
�Float32��
���
��������BitType��� �
�� �
�� �
	
������
��	max_value�
ByteEndian���
�
��
�
�����������get_u16_inner_or_default��SIZE_OF_VAL���get_u16_inner_or_die���%��get_u16_be_err��get_u16_le_err��
get_u16_be��
get_u16_le����get_u32_inner_or_default���%��get_u32_inner_or_die���%��get_u32_be_err��get_u32_le_err��
get_u32_be��
get_u32_le����get_u64_inner_or_default���%��get_u64_inner_or_die���%��get_u64_be_err��get_u64_le_err��
get_u64_be��
get_u64_le�v���write_u64_inner_or_die��SIZE��write_u64_inner_or_none���)�write_u64_be_err��write_u64_le_err��write_u64_be��write_u64_le�v���write_u32_inner_or_die���)�write_u32_inner_or_none���)�write_u32_be_err��write_u32_le_err��write_u32_be��write_u32_le�v���write_u16_inner_or_die���)�write_u16_inner_or_none���)�write_u16_be_err��write_u16_le_err��write_u16_be��write_u16_le��
ColorSpace��RGB��
�RGBA��
�YCbCr��
�Luma��
�LumaA��
�YCCK��
�CMYK��
�BGR��
�BGRA��
���
�ARGB��
�HSL��
�HSV��
���������������ColorCharacteristics��sRGB��
�Linear��
�����	���
����DecoderFlags��inflate_confirm_adler��png_confirm_crc��jpg_error_on_non_conformance��zune_use_unsafe��
zune_use_sse2��
zune_use_sse3��zune_use_sse41��zune_use_avx��
zune_use_avx2��png_add_alpha_channel��
zune_use_neon��png_strip_16_bit_to_8_bit����������	���
�>�DecoderOptions��	max_width��
max_height��out_colorspace��	max_scans��
deflate_limit����
endianness������
���EncoderFlags����jpeg_optimize_huffman��image_strip_metadata����������>�EncoderOptions����height����quality��depth��num_threads��effort��������	��8.8.838485868788898:8;8<8=8>8C8H8J8K8K8L8L8M8Q8R8W8X8Y8Z8[8\8]8_8`8a8b8c8d8e8f8i8j8k8o8p8q8r8s8t8u8�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�8�8V���������!���!������!k��
�����B��B���B��B�B�_�B�`�B�����"���"���"�����^�8��C�_�C��C���C��C�C����� ��� ��� ��ar�>���E�_�E��E���E��E�E��C�����
���
��P*�0T��F�_�F��F���F��F�F�##�
%�
&��`&��t�V8
V�?�?��?buf��:�?�	�:$x��Lk��G�B�B�BGlobal�����I��V8�GV8�G�V�G�V��G��
���-���-���-���.���.���.���.���.���.���	���/
���/���/�e����d��I�_�I��I���I��I�I�����0���0+Y�y<��I��K�_�K���K��K�K����0��0���1���1���1���1���1���2���2���2���2���2���3��������ar�#S�q�_�L��L��L�_���3��3���4���4���4���4������4�O��.�gs���M��M��M����5�����5���5����E��A�_�O��O��O�_���6�����6������6���6���6���6�����.��
�e���P��P��P���������������������������������������������������������������������������������������������������������,#Z
^�?b
f
lr��
��
F�F��#�*�_
*�`F��"V�
�,�U7>1�	$�	T�&�
�
�UD�
���UL��#/�V?	��UG�Vi(�Um�Vl���U	!�U>�U?G������U��C$�\��U$�V,3�U�5Wu���U$�	T�&��@]��"]��	�U5	BZ
a���"]
�^�U��d�
�d�
�\�
�	�]
��]
�S(����
�E<��C$��X\����]s����	Arguments���pieces��[����[����[k�ĉ������Z��Z��Z��Z����
�Z�Z%�Z@�ZHP$�"	T�!&��@]��"]��#	�Z"	/G
N���"]�ZZmܕ#
	̕#
�$��"
	��"
��U$Ԣ"
	Ģ"
��G$	�]�
��]�["�#��!�
�U,�!�C$�!�X\�"���]m�\j�Zg�Zo�Zw�ZOq�
�Z��Z����Z��Z��t�$$�$
#<�$
/L�$�$��$�$�U$	'�UJ�UK�$��#H�U,�$�C,�$�U��C��U�#G|�

�Z��("�Z$�$"No more bytes"��
��
J
#�G��U��1��
��Gt�
�G�
�Gz�F5l�#�U�#9��"G�U,�#�G,�#/�'�R!
�'�R�`"�'�R=��U('�R'_�X'�S��U�'�U29=��USIZE_OF_VAL��'�Y!
�'�Y�`"�'�Y=��U('�Y'_�X'�Z��U�'�U29=��USIZE_OF_VAL��8�R!
�8�R
��V(�8�R=��U(8�R'_�X8�S��U�'�U29=��USIZE_OF_VAL��8�Y!
�8�Y�k"�8�Y=��U(8�Y'_�X8�Z��U�'�U29=��USIZE_OF_VAL��I�R!
�I�R
�(�I�R=��U(I�R'_�XI�S��U�'�U29=��USIZE_OF_VAL��I�Y!
�I�Y�n"�I�Y=��U(I�Y'_�XI�Z��U�'�U29=��USIZE_OF_VAL���\��G0
7�
�n�GG,��l��U��/

t�
ژ�=�������g�U,�~~���v��v1@�_߸F,��U'�G*�U��q#,�l��U����C�U,��s,�,��$#l�$�U,�$4
;t�$
ؘH5��$�$��$\�$�q-
4�$�q>,�$�$��$8 �$���#v	$�#�s,�#�U,�#�U&�U%�U�U��s��q8Abytes�Js\�%�q��%
	�%�q@,�%�%�%���%B�U,�%�s,�%�s��q:T�&$�&
$�&
�3,�&�&|�&�&�U�&���&D$�&�s,�&�U��s�9l�)�UT�)$�)
$�)�y.,�)�)��)�)���)K$�)�s,�)�U��U��s� @�Z�9

�Z�9�n �Z�9+��U(Z�9'_��Z�A

�Z�A�n �Z�A+��U(Z�A'_��m�9

�m�9�k �m�9+��U(m�9'_��m�A

�m�A�k �m�A+��U(m�A'_����9
���9�`"���9+��U(��9)_����A
���A�`"���A+��U(��A)_�$�	T�
	
9�
�U�

�U�

�U�

�U�
�U������U,��I,��XL�9$�	���~Z
)��~Z
!��~Z
����x���~`Z$���,��XT�A$�	���~Z)��~Z
!��~Z
����a���~`Z$���,��X\�A$�	T�
$�
���U<�
���U��U-<�
���U��U-<�
���U��U-<�
���U��U-���������������������;t����Ul���,��X��{�
�U�,�U7>12�t�7�U�7���7I�U,�7�M,�7/|�9�U�9���8K�U,�9��,�9-��<�L�=���<U$�<��,�<,|�S�F�S���RQ�FT�S��,�R-��T �L�U���Tf$�T��,�T,��X�U�X���WQ�U,�X��,�W-Ԭ[�L�[���ZZ$�[��,�[,��a �L	�a���`f$�a��,�a,��f$�L�f���ef$�f��,�e,��g�L�h���g^$�g��,�g,�j��i$�L�j$�j�j���i��M$�i�MD�i�iw�Ht�l�U�l���kN�U,�k��,�k-��o�I�p���o]�IT�o��,�o-����L
������^$���,�/��	���$�L
��$����������M$ޣ�MDƣУ��LT��U����A�U,��P,�/T��C����D�CD�З,�-d��G����B�G�З,�-|��I����P�IT�З,�-\��G����@�G�З,�-��$�G�%���$J�G�$З,�$-��*	�O��* �*�*���)[$�*З,�*d2��-"�O�-���,f$�-З,�-,��/ �O�/���.j$�/З,�/,�	
��%���� ����� ����� ���_��h����G���	
��%��1�?�?��?�F�:�?�	�:$x��Lk��U�Ht{�	
��%��1�?�?��?�F�:�?�	�:$x��Lk��`�Ht{�����,��l��<�
�4��4�	�<�	�	<�
�����)& Core routines shared by all libraries�����52 This crate provides a set of core routines shared���63 by the decoders and encoders under `zune` umbrella����� It currently contains�����GD - A bytestream reader and writer with endian aware reads and writes���;8 - Colorspace and bit depth information shared by images���'$ - Image decoder and encoder options���85 - A simple enum type to hold image decoding results.�����NK This library is `#[no_std]` with `alloc` feature needed for defining `Vec`���-* which we need for storing decoded  bytes.�����t� # Features���96  - `no_std`: Enables `#[no_std]` compilation support.�����B?  - `serde`: Enables serializing of some of the data structures���     present in the crate����������
�
���	
�����\����,�error�,�
info�$�log_enabled�\�	trace�,�
�$����<��<�{4�kl�T<�C4�7Ԝ����8�4�t�'|�]����,�8lvl��&�8�$�*�����8�8��,�8���%�8,�%�������8�4�t�'|�(����,���,�8arg��&�8���*���+���8����8�<��7�,���%�������8�4�t�'|�����,���,�8��&�8���*���+���8����8�<��7�,���%�������8�4�t�'|��	�	�	�	,�	�	�	,�	8��	&�	8��	�	*�	�	�	%�	��	��	�	�	8�4�	t�	'|�	��	�	�	�	,�	�	�	,�	8��	&�	8��	�	*�	�	�	%�	��
��	�
�
8�4�
t�	'|�
8	�
�
�
�
,�
�
�
,�
8��
&�
8��
�
*�
�
�
%�
����2/ Image bit depth, information and manipulations�L����d��E��!��74 Return the equivalent of the image bit type's depth�D��E�C
$����C���<��C
l��C���&��C@ Return the minimum number of bits that can be used to represent��� each pixel in the image�����>; All bit depths below 8 return a bit type of `BitType::U8`.���OL  and all those above 8 and below 16 return a bit type of `BitType::SixTeen`���l�
 # Returns���MJ An enum whose variants represent the minimum size for an unsigned integer���52 which can store the image pixels without overflow���l�
 # Example���<� ```���2/ use zune_core::bit_depth::{BitDepth, BitType};���74 assert_eq!(BitDepth::Eight.bit_type(),BitType::U8);�����:7 assert_eq!(BitDepth::Sixteen.bit_type(),BitType::U16);�<�������)& See also [size_of](BitDepth::size_of)�D��C�E
�-��!#��@= Get the number of bytes needed to store a specific bit depth���,�  �l�����QN For images less than or equal to 8 bits(1 byte), we can use a [`u8`] to store���)& the pixels, and a size_of [`u8`] is 1�����[X For images greater than 8  bits and less than 16 bits(2 bytes), we can use a [`u16`] to���-* store the pixels, a size_of [`u16`] is 2.�<����� '$ use zune_core::bit_depth::BitDepth;��� " let depth = BitDepth::Sixteen;��� 96 // greater 12 bits is greater than 8 and less than 16���!" assert_eq!(depth.size_of(),2);�<�!��<�!�C�U�cL0��#%D�$���C�U�$
$�$����2
/ A simple implementation of a bytestream reader�|�
 and writer.��
���6
3 This module contains two main structs that help in���!
 byte reading and byte writing��
���;
8 Useful for a lot of image readers and writers, it's put���
 here to minimize code reuse�T�Sv�
\�
#�\�
~�d�V��
14�
��
+T�
4�
"#'min��� �d�V!t�&��'��L���'��,) An encapsulation of a byte stream reader�����?< This provides an interface similar to [std::io::Cursor] but���RO it provides fine grained options for reading different integer data types from��� the underlying buffer.�����?< There are two variants mainly error and non error variants,���@= the error variants are useful for cases where you need bytes���?< from the underlying stream, and cannot do with zero result.���RO the non error variants are useful when you may have proved data already exists���TQ eg by using [`has`] method or you are okay with returning zero if the underlying���$! buffer has been completely read.�����JG [std::io::Cursor]: https://doc.rust-lang.org/std/io/struct.Cursor.html��� [`has`]: Self::has�\��$$���G�V�Gd��G�`&��t%&*,\�4�##�G|�D�##�UL�$�'()�
*+�
�Ei�<D`��Ei�<D`�()*+)+�''��''���	''��''����	6�--���	��d�	�G.�.��	<$�	����G��G��������������������q�aX�U�����
�"�f+�c,�	,
.�G$�	�F�	��
$�00���
��d�
�G123456789:;<=>CHJKLM79��
*��,) Create a new instance of the byte stream�����/, Bytes will be read from the start of `buf`.�����1. `buf` is expected to live as long as this and�� all references to it live���l����/, A byte reader which will pull bits from bye��
�G�G//
1�G�F�2̛��! Destroy this reader returning���&# the underlying source of the bytes��� from which we were decoding�<��G�G//
2�G$���"��)& Skip `num` bytes ahead of the stream.�����=: This bumps up the internal cursor wit a wrapping addition���@= The bytes between current position and `num` will be skipped���|� # Arguments���! `num`: How many bytes to skip���T� # Note���GD This does not consider length of the buffer, so skipping more bytes���UR than possible and then reading bytes will return an error if using error variants���'$ or zero if using non-error variants���l���<�����+( use zune_core::bytestream::ZByteReader;���52 let zero_to_hundred:Vec<u8> = (0..100).collect();���85 let mut stream = ZByteReader::new(&zero_to_hundred);��� // skip 37 bytes��� stream.skip(37);�����#  assert_eq!(stream.get_u8(),37);�<�������KH See [`rewind`](ZByteReader::rewind) for moving the internal cursor back�$����G�U/�/
3�G$�num����$��;8 Undo a buffer read by moving the position pointer `num`��� bytes behind.�����(% This operation will saturate at zero�4����G�U/�/
4�G$������%��(% Return whether the underlying buffer���)& has `num` bytes available for reading���l�����<�����+��ԉ let data = [0_u8;120];���30 let reader = ZByteReader::new(data.as_slice());��� assert!(reader.has(3));�� assert!(!reader.has(121));�<�������G�U/�/
5�G$������%��/, Get number of bytes available in the stream�t����G�U/�/
6�G$��� ��(% Get length of the underlying buffer.�����2/ To get the number of bytes left in the buffer,�ԁ  use [remaining] method�� ���   [remaining]: Self::remaining�� ���G�U/� /
7�G$� ��!��!85 Return true if the underlying buffer stream is empty�D�!���G/�!/
8�G$�!��")��"'$ Get current position of the buffer.�d�#���G�U/�#/
9�G$�#̶$��#85 Return true whether or not we read to the end of the���#'$ buffer and have no more bytes left.��$���G/�$/
:�G$�$��& ��%*' Get number of bytes unread inside this�\�% stream.��%���%/, To get the length of the underlying stream,���% use [len] method��&���& [len]: Self::len()�L�&���G�U/�&/
;�G$�&��(@��'0- Get a part of the bytestream as a reference.��'���'=: This increments the position to point past the bytestream���(  if position+num is in bounds��(���G�U��������������������q�aX��G��/�(/
<�G$�(���(��-W��+41 Look ahead position bytes and return a reference���+74 to num_bytes from that position, or an error if the���+  peek would be out of bounds.��,���,IF This doesn't increment the position, bytes would have to be discarded���, at a later point.�<�-���G�U�U��������������������q�aX��G��/�-/
=�G$�-�D�-	num_bytes�L�-��5Y��/=: Get a fixed amount of bytes or return an error if we cant���0 satisfy the read��0���0>; This should be combined with [`has`] since if there are no���1  more bytes you get an error.��1���1MJ But it's useful for cases where you expect bytes but they are not present��2���2:7 For the zero  variant see, [`get_fixed_bytes_or_zero`]��2�l�2��\�2 ```rust���2+����3DA let mut stream = ZByteReader::new([0x0,0x5,0x3,0x2].as_slice());���3PM let first_bytes = stream.get_fixed_bytes_or_err::<10>(); // not enough bytes���4" assert!(first_bytes.is_err());�<�4���5���5 [`has`]:Self::has���5>; [`get_fixed_bytes_or_zero`]: Self::get_fixed_bytes_or_zero���5���G��������������������q�aX�H��/�??�6/��Ut�6
>�G�$�6�6�U��>D��9;8 Get a fixed amount of bytes or return a zero array size���9  if we can't satisfy the read��:���:>����:/, more bytes you get a zero initialized array��;���;96 For the error variant see, [`get_fixed_bytes_or_err`]��;�l�;��\�;����;+����<D����<<9 let first_bytes = stream.get_fixed_bytes_or_zero::<2>();���=&# assert_eq!(first_bytes,[0x0,0x5]);�<�=���=���=����><9 [`get_fixed_bytes_or_err`]: Self::get_fixed_bytes_or_err���>���G�H/�DD�?/��t�>
C�G�$�?�>�U��D>��ANK Skip bytes until a condition becomes false or the stream runs out of bytes��B�l�B���B�\�B����B+����C96 let mut stream = ZByteReader::new([0;10].as_slice());���CYV stream.skip_until_false(|x| x.is_ascii()) // skip until we meet a non ascii character�<�D����D���G�
/�
II�D/�����D����Gt�D��ه�$�D
H�G��$�Efunc�$�ELN��H&��G96 Return the remaining unread bytes in this byte reader�|�H���G��G/�H/
J�G$�H��IE$�I����G��G��������������������q�aX�U��/�I/
K�G$�I�F�I��LH��L  Read enough bytes to fill in�T�L����G��G��������������������q�aX��/�L/
L�G$�M�F�M��O/��N Set the cursor position��N���OEB After this, all reads will proceed from the position as an anchor�L�O point�d�O���G�U/�O/
M�G$�O�D�O�P|�P�P�j�P�Q",�P8�
$�P&�P8��P$�P,�P8name2�,�P&�P8��P$�P,�P8name3�,�P&�P8��P$�P,�P8name4�,�P&�Q8��Q$�Q,�Q8name5�,�Q&�Q8��Q$�Q,�Q8name6�,�Q&�Q8��Q$�Q,�Q8int_type�D�Q&�Q8��Q*�Q�Q�j8$�Q�Q8��Q&�Q8�d�Q�Q8�
\�Q�Q8��Q�Q�Q�je+�Q�Q�Q8�4�Q�Q�Q8�4�Q8�R,�R8�
$�R�R�R�R8�R8$�R$�R8mode�$�R&�R8�
$�R(�R,�R8��D�R�R�X8,�R8�%\�R&�R8�,�R�R8�$�R'�R8mem��R'�R8�<�R'�S�S,�S8��D�S�S�S�S%�S8�S8�S8space�,�S�S�S�S7��S%�S8�%\�S%�S8,�S8$�S �S8�
4�S �S8�L�S�S�T	8$�S �S8�D�S!�T8$�T �T8�D�T�T8�%\�T�T�X8�$�T�T�T8�D�T*�T�T�W8��,�U �U8copy_from_slice�|�U�U�U8�D�U%�U8$�U �U8�D�U�U8�%\�U%�U8,�U8��$�U�V�W8�
$�V'�V8�
�V*�V,�V8��D�V'�V8
from_le_bytes�l�V�V�V8��,�V$�V8�
$�W'�W8�
�W*�W,�W8��D�W'�W8
from_be_bytes�l�W�W�W8��,�W$�W8�$�W*�W7��W$�W+�X�X�X8�4�X�X�X8�4�X8�X,�X8��,�X�X�X�X8�X8$�X$�X8��$�X&�X8�
$�X(�X8�4�X�X,�X8��D�X$�X�X:7<�X8��Y�Y�Y�_8,�Y8�%\�Y&�Y8�,�Y�Y8�$�Y'�Y8���Y'�Y8�<�Y'�Y�Y,�Y8��D�Y�Y�Y�Y%�Y8�Y8�Y8��,�Z�Z�Z�Z7��Z%�Z8�%\�Z%�Z8,�Z8$�Z �Z8�
4�Z �Z8�L�Z�Z�Z	8$�Z �Z8�D�Z!�Z8$�Z �Z8�D�Z�Z8�%\�Z�[�^	8�$�[�[�[8�D�[*�[�[�^8��,�[ �[8�|�[�[�[8�D�[%�[8$�\ �\8�D�\�\8�%\�\%�\8,�\8��$�\�\�^8�
$�]'�]8�
�]*�]8��]�]�],�]8��D�]'�]8��l�]�]�]8��,�]$�]8�
$�]'�]8�
�]*�]8��]�]�^,�]8��D�]'�]8��l�]�]�^8��,�^$�^8�$�^*�^8��^�^�^8�
L�^$�^+�_�_�_8��_�_8�4�_	�_�_�_7Read �<�_$�_8�L�_	�_�_�_,�_8��D�_$�_7 as a big endian integer�Խ_+�_�_�`8��_�_8�4�_	�_�_�`7=Returning an error if the underlying buffer cannot support a ���_?$�`8�L�`	�`�`�`,�`8��D�`$�`7 read.�D�`+�`�`�`8�4�`8�`8�`,�`8Ҏ,�`�a�a�a8�a8$�a(�a8�4�a�a,�a8��D�a$�a�a:7<�a8��a�a�a�a8$�a �a,�a8��,�a�a�a8�
$�a'�a8�
�a+�b�b�b8��b�b8�4�b	�b�b�b7�<�b$�b8�L�b	�b�b�b,�b8��D�b$�b7 as a little endian integer��b+�b�b�c8��b�b8�4�b	�b�b�c7����b?$�c8�L�c	�c�c�c,�c8��D�c$�c7��D�c+�c�c�c8�4�c8�c8�c,�c8��,�c�c�d�c8�c8$�c(�d8�4�d�d,�d8��D�d$�d�d:7<�d8��d�d�d�d8$�d �d,�d8��,�d�d�d8�
$�d'�d8�
�d+�d�d�e8��d�d8�4�d	�e�e�e7�<�e$�e8�L�e	�e�e�e,�e8��D�e$�e7��ԡe+�e�e�f8��e�e8�4�e	�e�e�f7GReturning 0 if the underlying  buffer does not have enough bytes for a ���eI$�f8�L�f	�f�f�f,�f8��D�f$�f7��D�f+�f�f�f8�4�f�f�f8�4�f8�f8�f,�f8��,�f�f�g�f8�f8$�g(�g,�g8��D�g�g�g8$�g �g,�g8�
$�g�g�g8�
$�g'�g8�
�g+�g�g�h8��g�g8�4�g	�g�g�h7�<�g$�g8�L�g	�g�h�h,�h8��D�h$�h7���h+�h�h�i8��h�h8�4�h	�h�h�i7FReturning 0 if the underlying buffer does not have enough bytes for a ���hH$�i8�L�i	�i�i�i,�i8��D�i$�i7��D�i+�i�i�i8�4�i�i�i8�4�i8�i8�i,�i8�,�i�i�i�i8�i8$�i(�i,�i8��D�i�j�j8$�j �j,�j8�
$�j�j�j8�
$�j'�j8�
�j%�j��l0�PP���l��d�l�GQR�p��m.+ Retrieve a byte from the underlying stream���m41 returning 0 if there are no more bytes available��m���n>; This means 0 might indicate a bit or an end of stream, but���n=: this is useful for some scenarios where one needs a byte.��o���o-* For the panicking one, see [`get_u8_err`]��o���o$! [`get_u8_err`]: Self::get_u8_err�4�p���G�GO�pO
Q�G$�p��s8��q.����q;8 returning an error if there are no more bytes available��r���r-* For the non panicking one, see [`get_u8`]��r���r [`get_u8`]: Self::get_u8�T�s���G��������������������q�aX�G��O�sO
R�G$�sT�
4�
V���?ST�,���SU|�(������ The underlying reader trait����� # Considerations�����SP- When implementing this for a type, it is recommended to implement methods with���VS `#inline[(always)]` directive to allow the functions to get inlined in call sites,���WT this may make it faster on some situations since the call sites may be in hot loop.�����]Z - If you are reading from a file and it's small , it is preferable to read it into memory���#  instead of using a file reader.�2>VV�����V����WXYWXYXWY��0��2/ Get a single byte which is at position `index`���|�����(% - `index`: The position of the bytes�D������U����������������;t�����GV�V
W��$��,���:��30 Get a slice of bytes from a range of start..end���|�������.+ * `index`:  The range of the bytes to read��	��	 returns: `Option<&[u8]>`��	�t�	 # Examples��	���	 - Read 10 bytes from�<�
����
 extern crate alloc;�Ŀ
 use alloc::vec::Vec;���
,) use zune_core::bytestream::ZReaderTrait;����� let bytes = vec![0_u8;100];����� // get ten bytes from 0..10���-* let re = bytes.get_slice(0..10).unwrap();�ܗ assert_eq!(10,re.len())���<���L����������������,M�[�}�U����������������;t�����GV�V
X��$��,�܍��
.+ Get total length of the underlying buffer.��
���
63 This should be the total bytes that are present in�|� the buffer.�����.+ For files, this includes the file  length.���85 For buffers this includes the internal buffer length�<������UV�V
Y��$�ܬ8���G[\]WXY[\]��/D����G�U����������������;t�����GZ�Z
[8$��,���9L����G������������������;t�����GZ�Z
\8$��,���<����G�UZ�Z
]8$����G_`aWXY`a_��/D����G�U����������������;t�����G^�^
_$��,���9L����G������������������;t�����G^�^
`$��,�ԗ<����G�U^�^
a$���8���HcdeWXYdce��/D����H�U����������������;t�����Gb�b
c8$��,���9L����H������������������;t�����Gb�b
d8$��,���<����H�Ub�b
e8$���.8��gg���t��HijkWXYikj��U��/D����H�U����������������;t�����Gf�f
i8�$��,���9L����H������������������;t�����Gf�f
j8�$��,�ԍ<����H�Uf�f
k8�$���-�mm��Ut��HopqWXYpoq��U��/D����H�U����������������;t�����Gl�l
o�$��,���9L����H������������������;t�����Gl�l
p�$��,�ԥ<����H�Ul�l
q�$���&8���HstuWXYstu��/D����H�U����������������;t�����Gr�r
s8$��,���9L����H������������������;t�����Gr�r
t8$��,���<����H�Ur�r
u8$�T�
4�
x}~�<��vw��L�$�vxyz�
{|�
z��|i{cz��|i{cyz{|z|�vxx��vxx���vxx��vxx����L�v��
������*' Encapsulates a simple Byte writer with���#  support for Endian aware writes�\��~~���v��v1@�_߸F�1@�_߸F�����4�v~~��G|�D�v~~�U�������������������������B��0- Write bytes from the buf into the bytestream���*' and return how many bytes were written���|�����63 - `buf`: The bytes to be written to the bytestream���l����+( - `Ok(usize)` - Number of bytes written���SP This number may be less than `buf.len()` if the length of the buffer is greater���'$ than the internal bytestream length�,����ZW If you want to be sure that all bytes were written, see [`write_all`](Self::write_all)���,��������G�����
��$��F���
C��
=: Write all bytes from `buf` into the bytestream and return���
=: and panic if not all bytes were written to the bytestream���|�����85 - `buf`: The bytes to be written into the bytestream���d�	# Returns���DA - `Ok(())`: Indicates all bytes were written into the bytestream���DA - `Err(&static str)`: In case all the bytes could not be written���
 to the stream�L�
�������G���
�
��$�
�F�
��1��" Create a new bytestream writer���C@ Bytes are written from the start to the end and not assumptions���30 are made of the nature of the underlying stream���|����������
��data�$���'��30 Return number of unwritten bytes in this stream���l���<�����+( use zune_core::bytestream::ZByteWriter;��� let mut storage = [0;10];�����0- let writer = ZByteWriter::new(&mut storage);���@= assert_eq!(writer.bytes_left(),10); // no bytes were written�<���T������U���
��$���%��52 Return the number of bytes the writer has written���<�����+����/, let mut stream = ZByteWriter::new(&mut []);���$! assert_eq!(stream.position(),0);�<���D������U���
��$���D��85 Write a single byte into the bytestream or error out���  if there is not enough space���l���<�����+��̀ let mut buf = [0;10];���2/ let mut stream  =  ZByteWriter::new(&mut buf);���-* assert!(stream.write_u8_err(34).is_ok());�<���d�	 No space�<�����+����/����.+ assert!(stream.write_u8_err(32).is_err());�<�����d������G����
��$�byte�$���$��41 Write a single byte in the stream or don't write���C@ anything if the buffer is full and cannot support the byte read�����.+ Should be combined with [`has`](Self::has)�D������G���
��$�ҁ$���#-��!(% Check if the byte writer can support���! the following write��!�l�!��<�!����!+��Ԫ" let mut data = [0;10];���"1. let mut stream = ZByteWriter::new(&mut data);���" assert!(stream.has(5));���# assert!(!stream.has(100));�<�#���#�����U��#�
��$�#�v�:��% ��$(���%�����U��%�
��$�%��&$��%8��D�&������&�
��$�&��)��&8����''���'���'EB If this is true, all non error variants will silently discard the���(FC byte and all error variants will return an error on writing a byte���( if any write occurs��)��)��)������)�
��$�)��-#��)A> Rewind the position of the internal cursor back by `by` bytes��*���*" The position saturates at zero��*�l�*��<�+����++���+ let bytes = &mut [1,2,4];���+-* let mut stream = ZByteWriter::new(bytes);��, stream.write_u16_be(23);���,,) // now internal cursor is at position 2.���, // lets rewind it���, stream.rewind(usize::MAX);���-$��<�-��4�-�����U��-�
��$�-by��-��/!��./, Move the internal cursor forward some bytes��/��/���/>; This saturates at maximum value of usize in your platform.�$�/�����U��/�
��$�/܏�/��2]��04����17����1 ���1���1I����2��<�2����U�U��������������������q�aX��G����
��$�2�D�2��L�3��6/��5(% Set position for the internal cursor��5���563 Further calls to write bytes will proceed from the���6
 position set�d�6�����U��6�
��$�6�D�6��7��7�7�T�7�8",�78�
$�7&�78��7$�7,�78��,�7&�78��7$�7,�78Ҏ,�7&�78��7$�7,�78��,�7&�78��7$�7,�78��,�7&�78��7$�7,�78�,�7&�78��7$�7,�78��D�7&�88��8*�8�8�T	8$�8�8:��8�88�\�8�8:��8�8�8�T]+�8�8�88�4�8�8�88�4�88�8,�88�
$�8�8�9�88�88$�8$�88ҁ$�8&�8,�88��D�8$�98��$�9&�98�
$�9(�98�4�9�9�9�9$�9�9:7<�98��9�9�9�@8,�98�)$�9&�98�,�9�98�<�9'�9�9,�98��D�9�9�9�9%�98,�:8$�: �:8�4�: �:8get_mut�<�:�:�:	8$�: �:8�D�:!�:8$�: �:8�D�:�:8�)$�:�:�@8�$�:�:�:8m_byte�4�:*�:�;�?8$�; �;8�D�;�;8�)$�;%�;8�=8�v,�=�=8,�=8��$�=�=�?8�
$�>'�>8�
�>*�>8ҁ$�> �>8to_be_bytes�\�>�>�>$�>8�
$�>'�>8�
�>*�>8ҁ$�> �>8to_le_bytes�\�>�>�>%�?8�4�? �?8�|�?�?�?�?8�v,�?%�?8��?�?�?�?�?8�$�@*�@8��@�@�@8�
L�@+�@�@�@8�4�@�@�@8�4�@8�@,�@8��,�@�@�A�@8�@8$�@$�A8ҁ$�A&�A,�A8��D�A$�A8��$�A&�A8�
$�A�A�G8,�A8�)$�A&�A8�,�A�A8�<�A'�A�A,�A8��D�A�A�A�A%�A8�A8�A8�$�B�B�B8�4�B�B8$�B �B8�4�B �B8ݜ<�B�B�B	8$�B �B8�D�B!�B8$�B �B8�D�B�B8�)$�B�B�F8$�B �B8�D�B�B8�)$�C%�C8�D8�v,�D�E8,�E8��$�E�E�F8�
$�E'�E8�
�E*�E8ҁ$�E �E8Ÿ\�E�E�E$�E8�
$�E'�E8�
�E*�F8ҁ$�F �F8��\�F�F�F%�F8�4�F �F8�|�F�F�F�F8�v,�F%�F+�G�G�G8��G�G8�4�G	�G�G�G7Write �D�G$�G8�L�G	�G�G�G,�G8��D�G$�G7��ԽG+�G�G�H8��G�G8�4�G	�G�G�H7����G?$�H8�L�H	�H�H�H,�H8��D�H$�H7 write.�L�H+�H�H�H8�4�H8�H8�H,�H8Ҏ,�I�I�I�I8�I8$�I$�I8ҁ$�I&�I,�I8��D�I(�I8�4�I�I�I�I$�I�I:7<�I8��I�I�I�J8$�I �I,�I8�
$�I�I�I8ҁ$�I$�I8�
$�I'�I8�
�I+�J�J�J8��J�J8�4�J	�J�J�J7©D�J$�J8�L�J	�J�J�J,�J8��D�J$�J7���J+�J�J�K8��J�J8�4�J	�J�J�K7����J?$�K8�L�K	�K�K�K,�K8��D�K$�K7��L�K+�K�K�K8�4�K8�K8�L,�L8��,�L�L�L�L8�L8$�L$�L8ҁ$�L&�L,�L8��D�L(�L8�4�L�L�L�L$�L�L:7<�L8��L�L�L�M8$�L �L,�L8�
$�L�L�L8ҁ$�L$�L8�
$�L'�L8�
�L+�M�M�M8��M�M8�4�M	�M�M�M7©D�M$�M8�L�M	�M�M�M,�M8��D�M$�M7����M+�M�M�N8��M�M8�4�M	�M�M�N77Or don't write anything if the reader cannot support a ���M9$�N8�L�N	�N�N�N,�N8��D�N$�N7��L�N+�N�N�O8��N�N8�4�N	�N�N�O7R\nShould be combined with the [`has`](Self::has) method to ensure a write succeeds���NT+�O�O�O8�4�O8�O8�O,�O8��,�O�O�P�O8�O8$�O$�P8ҁ$�P&�P,�P8��D�P�P�P8$�P �P,�P8��,�P�P�P8ҁ$�P$�P8�
$�P'�P8�
�P+�P�P�Q8��P�P8�4�P	�P�P�Q7©D�P$�P8�L�P	�Q�Q�Q,�Q8��D�Q$�Q7���Q+�Q�Q�R8��Q�Q8�4�Q	�Q�Q�R7����Q9$�R8�L�R	�R�R�R,�R8��D�R$�R7��L�R+�R�R�S8��R�R8�4�R	�R�R�S7PShould be combined with the [`has`](Self::has) method to ensure a write succeeds���RR+�S�S�S8�4�S8�S8�S,�S8�,�S�S�S�S8�S8$�S$�S8ҁ$�S&�S,�S8��D�S�S�T8$�T �T,�T8��,�T�T�T8ҁ$�T$�T8�
$�T'�T8�
�T%�T����<9 Image Colorspace information and manipulation utilities.�T����|�
�I������+��
=: Number of color channels present for a certain colorspace�����LI E.g. RGB returns 3 since it contains R,G and B colors to make up a pixel�t����I�U���
�$���%L����I���
�$���(d����I���
�$���3��63 Returns the position of the alpha pixel in a pixel�������^[ That is for an array of color components say `[0,1,2,3]` if the image has an alpha channel���c` and is in RGBA format, this will return `Some(3)`, indicating alpha is found in the third index���a^ but if the image is in `ARGB` format, it will return `Some(0)` indicating alpha is found in  �\� index 0�����<9 If an image doesn't have an alpha channel returns `None`���t����I�����
�$���,��-* Encapsulates all colorspaces supported by�|� the library�|��I�U
�D�U|�� Decoder and Encoder Options� ��$:7 This module exposes a struct for which all implemented��_,) decoders get shared options for decoding�����VS All supported options are put into one _Options to allow for global configurations���NK options e.g the same  `DecoderOption` can be reused for all other decoders���<����3t����6t�����%��\�<��������$T�����-T������+���(����L
���!d���L
��� \���L
���,��,
 Initializers��M�����/#��,>; Create the decoder with options  setting most configurable���-)& options to be their safe counterparts��-���-?< This is the same as `default` option as default initializes���.! options to the  safe variant.��.���.@= Note, decoders running on this will be slower as it disables���/  platform specific intrinsics�D�/�M��
���1#��0DA Create the decoder with options setting the configurable options���0 to the fast  counterparts��1���1FC This enables platform specific code paths and enable use of unsafe�D�1�M��
���4"��2A> Create the decoder options with the following characteristics��3���3 - Use unsafe paths.���3WT - Ignore error checksuming, e.g in png we do not confirm adler and crc in this mode���4" - Enable fast intrinsics paths�<�4�M��
���6��5,) Global options respected by all decoders��M�������������7*��663 Get maximum width configured for which the decoder���6;8 should not try to decode images greater than this width�l�7���M�U��7�
�$�7��8+��7>; Get maximum height configured for which the decoder should���852 not try to decode images greater than this height�t�9���M�U��9�
�$�9��:%��9<9 Return true whether the decoder should be in strict mode�ԇ: And reject most errors�|�:���M��:�
�$�:��<*��;0- Return true if the decoder should use unsafe�ܕ< routines where possible�t�<���M��<�
�$�<��>4��=:7 Set maximum width for which the decoder should not try���=+( decoding images greater than that width��=�|�>���>���>)& * `width`:  The maximum width allowed��>���> returns: DecoderOptions�l�?�M�U�M��
�$�?�,�?��A6��?;8 Set maximum height for which the decoder should not try���@,) decoding images greater than that height�|�@���@���@*' * `height`: The maximum height allowed��A�ܬA���A�t�A�M�U�M��
�$�A�64�A��F2��B96 Whether the routines can use unsafe platform specific��C intrinsics when necessary��C���C<9 Platform intrinsics are implemented for operations which���C@= the compiler can't auto-vectorize, or we can do a marginably���D better job at it��D���D1. All decoders with unsafe routines respect it.��E���EB? Treat this with caution, disabling it will cause slowdowns but���E/, it's provided for mainly for debugging use.��F���FC@ - Respected by: `png` and `jpeg`(decoders with unsafe routines)�t�F�M�M��
�$�F��F��G;��G��M�L�M��
�$�H�,�H��K3��H>; Set whether the decoder should be in standards conforming/�|�I strict mode��I���IGD This reduces the error tolerance level for the decoders and invalid���J+( samples will be rejected by the decoder��J�|�J���J�d�J	 * `yes`:��J���J���K�|�K�M�M��
�$�K��K��Q<��M?< Set the byte endian for which raw samples will be stored in���M96 in case a single pixel sample spans more than a byte.��N���N@= The default is usually native endian hence big endian values���N@= will be converted to little endian on little endian systems,��O���ORO and little endian values will be converted to big endian on big endian systems��O�|�P���P���P;8 * `endian`: The endianness to which to set the bytes to��P���P��|�Q�M�F�M��
�$�Qendian�4�Q��R1��QKH Get the byte endian for which samples that span more than one byte will�t�R be treated�|�R���M�F��R�
�$�R��SĶS PNG specific options��M��������������T5��S.+ Whether the inflate decoder should confirm���T adler checksums���T���M��T�
�$�T��U=��U2/ Set whether the inflate decoder should confirm���U����U�M�M��
�$�V��V��W.��V30 Get default inflate limit for which the decoder���W&# will not try to decompress further���W���M�U��W�
�$�W��Y8��X96 Set the default inflate limit for which decompressors���X/, relying on inflate won't surpass this limit�-\�Y��Y�M�U�M��
�$�Ylimit�,�Y��Z/��Z.����Z crc 32 checksums���Z���M��[�
�$�[��\7��[.+ Set whether the png decoder should confirm���\ CRC 32 checksums�-\�\��\�M�M��
�$�\��\��_=��]>; Set whether the png decoder should add an alpha channel to���] images where possible.��^���^1. For Luma images, it converts it to Luma+Alpha��^���^.+ For RGB images it converts it to RGB+Alpha�̊_�M�M��
�$�_��_��`5��`;8 Return true whether the png decoder should add an alpha���`$! channel to images where possible�̀a���M��a�
�$�a��c9��a@= Whether the png decoder should reduce 16 bit images to 8 bit���b images implicitly.��b���b�� Equivalent to [png::Transformations::STRIP_16](https://docs.rs/png/latest/png/struct.Transformations.html#associatedconstant.STRIP_16)���c�M�M��
�$�c��c��e1��dEB Return a boolean indicating whether the png decoder should reduce���e,) 16 bit images to 8 bit images implicitly���e���M��e�
�$�e��g/��f@= Return whether `zune-image` should decode animated images or���g63 whether we should just decode the first frame only���g���M��g�
�$�g��iA��h>; Set  whether `zune-image` should decode animated images or���h6���i�M�M��
�$�i�I��j̮j JPEG specific options��M������k/��j0- Get maximum scans for which the jpeg decoder���k.+ should not go above for progressive images���k���M�U��k�
�$�k��m=��l74 Set maximum scans for which the jpeg decoder should���l*' not exceed when reconstructing images.���m�M�U�M��
�$�m�4L�m��o9��nFC Get expected output colorspace set by the user for which the image���n)& is expected to be reconstructed into.��n���o" This may be different from the���o���M�I��o�
�$�o��rH��pJG Set expected colorspace for which the jpeg output is expected to be in��p���pa^ This is mainly provided as is, we do not guarantee the decoder can convert to all colorspaces���q>; and the decoder can change it internally when it sees fit.�-\�r��r�M�I�M��
�$�r�T�r��t��s Intrinsics support��s���s)& These routines are compiled depending���s=: on the platform they are used, if compiled for a platform���tGD it doesn't support,(e.g avx2 on Arm), it will always return `false`��M��������v��u'$ Use SSE 2 code paths where possible��u���u74 This checks for existence of SSE2 first and returns���u false if it's not present�D�v���M��v�
�$�v��~��|" Use SSE 3 paths where possible��}��}���}:7 This also checks for SSE3 support and returns false if���} it's not present�D�~���M��~�
�$�~�����! Use SSE4 paths where possible�������@= This also checks for sse 4.1 support and returns false if it���� is not present�L�����M����
�$������܌  Use AVX paths where possible�������>; This also checks for AVX support and returns false if it's�|̍ not present�<�����M����
�$��������! Use avx2 paths where possible�����C@ This also checks for AVX2 support and returns false if it's not�\�� present�D����M���
�$����DƜ���M�Ϝ�
�$М���䉠 JPEG_XL specific options��M�����/���@�����6��͡���M���
�$����A���>����6�����M�M��
�$ʣ��J����M����Τ<Ѥ�M��
�\�<�����"D�����-T����ԫ+�����P�����<��P��
���
�P�������������������p��
  Create  new encode options���|���,��Ԭ * `width`: Image width��� * `height`: Image height���&# * `colorspace`:  Image colorspaces�ԗ * `depth`: Image depth���ܾ returns: EncoderOptions�����U�U�I�C�P��
��,��64�
�T�
�6,�
��&��85 Get the width for which the image will be encoded in�L����P�U���
�$���!��52 Get height for which the image will be encoded in����� returns: usize���d�	 # Panics��� If height is zero�T����P�U���
�$���)��85 Get the depth for which the image will be encoded in�L����P�C���
�$���%��<9 Get the quality for which the image will be encoded with���d�	  # Lossy���?< - Higher quality means some images take longer to write and��� are big but they look good�����74 - Lower quality means small images and low quality.���t� # Lossless���B? - High quality indicates more time is spent in making the file�\� smaller�����HE - Low quality indicates less time is spent in making the file bigger�\����P�G���
�$���0��=: Get the colorspace for which the image will be encoded in�t����P�I���
�$���$T����P�G���
�$���0��)& Set width for the image to be encoded�L��P�U�P��
�$��,���2��*' Set height for the image to be encoded�T��P�U�P��
�$��64���3��)& Set depth for the image to be encoded�L��P�C�P��
�$��6,���1��*' Set quality of the image to be encoded�����" Quality is clamped from 0..100�����A> Quality means different options depending on the encoder, see���$! [get_quality](Self::get_quality)�\��P�G�P��
�$��6<���?��.+ Set colorspace for the image to be encoded�t��P�I�P��
�$��T���!5�� @= Set the number of threads allowed for multithreaded encoding���  where supported��!���!" Zero means use a single thread�|�!�P�G�P��
�$�!threads�<�!��"/T�"�P�G�P��
�$�"�64�"��$)��#:7 Return number of threads configured for multithreading���# where possible��#���#-* This is used for multi-threaded encoders,�Ԣ$ currently only jpeg-xl�|�$���P�G��$�
�$�$��'6��%A> Set whether the encoder should remove metadata from the image��%���%C@ When set to `true`, supported encoders will strip away metadata���&HE from the resulting image. If set to false, where supported, encoders���&(% will not remove metadata from images���'�P�P��
�$�'��'��)*��(DA Whether or not the encoder should remove metadata from the image��(���(VS The default value is false, and encoders that respect this try to preserve as much���).+ data as possible from one image to another�t�*���P��*�
�$�*��*��*
 JPEG options��P�����,3��+HE Whether the jpeg encoder should encode the image in progressive mode��+���+ Default is `false`.��+���,UR This may be used to create slightly smaller images at the cost of more processing�D�, time���,���P��-�
�$�-��.9��-SP Whether the jpeg encoder should optimize huffman tables to create smaller files���." at the cost of processing time��.���.��/���P��/�
�$�/��0?��/MJ Set whether the jpeg encoder should encode the imagei in progressive mode��0���0 Default is `false`���0�P�P��
�$�1��1t���	 Decoding results for images�4����	�?��|�	��	��&	# A simple enum that can hold decode�Ԅ	 results of most images�3��	t�	���_��h�����������G��������������N�N��
��N�N�G������<�	���G=O=O��
�=O=O�������D�	����O�O��
��O�O��������D�	������	������"	��A	> Return the contents if the enum stores `Vec<u8>` or otherwise���	 return `None`.��	���=	: Useful for de-sugaring the result of a decoding operation���	 into raw bytes��	�l�	��<�	����*	' use zune_core::result::DecodingResult;���/	, let data = DecodingResult::U8(vec![0;100]);���<	9 // we know this won't fail because we created it with u8���!	 assert!(data.u8().is_some());��	���0	- let data = DecodingResult::U16(vec![0;100]);���9	6 // it should now return nothing since the type is u18���!	 assert!(data.u8().is_none());��	�<�	���	������������������;t����G��
�$�	��$	��	B	? Return the contents if the enum stores `Vec<u16>` or otherwise���		���		���
=	����
	���
	�l�
	��<�
	����
*	����/	����<	9 // we know this will fail because we created it with u16���"	 assert!(data.u16().is_none());��	��	���0	����
;	8 // it should now return something since the type is u16���
"	 assert!(data.u16().is_some());��
	�<�
	���	������������������;t������
�$�	t�,��Bk��
�������������������,����B���B�)�U$����B���B$����B���B,����B���B,����B���B ��B(��B���!#���B�B���
�,�� �B���!�(*-/8�9=?���B���
��H�!�B!�B���46����B��B���
�L���(	�"�B��_�!#�����B��^�^��^��[�^�F�[����e�S����������������������q�aXÅÅą��:�����	��
�,��= 
�#�B��`�!#����B������
��������`���
���$��������� The image bit depth.�����2/ The library successfully supports depths up to���:7 16 bits, as the underlying storage is usually a `u16`.�����B? This allows us to comfortably support a wide variety of images���'$ e.g 10 bit av1, 16 bit png and ppm.�3��D��C��^�8������������,��� U8 bit depth.�����2/ Images with such bit depth use [`u8`] to store���.+ pixels and use the whole range from 0-255.�����41 It is currently the smallest supported bit depth��� by the library.�����C@ For images with bit depths lower than this, they will be scaled��� to this bit depth�s���C�����C<��� U16 bit depth�����SP Images with such bit depths use [`u16`] to store values and use the whole range�|� i.e 0-65535�����2/ Data is stored and processed in native endian.�����C�����C<�	��30 Floating point 32 bit data, range is 0.0 to 1.0��	�Ԙ	 Uses f32 to store data�o���C�����C<�	��	$! Bit depth information is unknown�3���CFH���C �$�C(�%�C���!#���C�C���
�,�(
�&�C��_�!#�����C��^�^��^��[�^�F�[����e�S�����
��
�,����'�C���!�(*-/8�9=?���C���
��H�(�C(�C���46����C��C���
�L�������	2/ The underlying bit representation of the image��
���
.+ This represents the minimum rust type that���
1. can be used to represent image data, required���%" by `Channel` struct in zune-image�3��<��E��ar�>�������������.+ Images represented using a [`u8`] as their�� underlying pixel storage�a���Etv���E�
��/, Images represented using a [`u16`] as their��
 underlying pixel storage.�c���Evx���E���
/, Images represented using a [`f32`] as their���
��J���E]_���E �)�E(�*�E���!#���E�E���
�,�(�+�E��_�!#�����E��^�^��^��[�^�F�[����e�S�������
�,����,�E���!�(*-/8�9=?���E���
��H�-�E-�E���46����E��E���
�L�����#��0- Get the max value supported by the bit depth�����30 During conversion from one bit depth to another�����52 larger values should be clamped to this bit depth��<��$�l���L��C�U
��+��&��$'$ Byte endianness of returned samples���$C@ this is useful when the decoder returns samples which span more���%2/ than one byte yet the type returned is `&[u8]`��%���%DA This helps you interpret how those bytes should be reconstructed�Բ& to a higher order type�T�'�F��P*�0T�������'�' Little Endian byte-order�*���F=?���F�'̽' Big Endian byte-order�'���F:<���F �&2�F(�&3�F���!#���F�F��&�
�,�&( �&4�F��_�!#�����F��^�^��^��[�^�F�[����e�S����� �&�
�,�&��!�&5�F���!�(*-/8�9=?���F�!�&�
��&H"�&6�F6�F���46����F��F�"�&�
�L�&���'�Q#
�����'�Q��`'�Q�G������#%�'�R,��u���G���U�'�R�
��G '�R�� '�R�'�RX'�R�U�3���U�'�XC��v���G����������������������q�aX�U���'�X�
��G '�X�� '�X�'�YX'�Y�U�4���U�'�`;�'�_'�_ Read u16 as a big endian integer����)�_A�'�_H�'�_'�_FReturning an error if the underlying buffer cannot support a u16 read.��+�_g�'�_nt�v���G���'�a�
��G '�a�'�c;�'�b'�b#Read u16 as a little endian integer����-�bD�'�bK�'�b'�bÆÆ�/�bg�'�bnt�v���G���'�c�
��G '�c�'�f%�'�d'�d�����1�dA�'�dH�'�e'�ePReturning 0 if the underlying  buffer does not have enough bytes for a u16 read.����3�eq�'�exT�v���G�U�'�f�
��G '�g�'�i%�'�g'�g�����5�gD�'�gK�'�h'�hOReturning 0 if the underlying buffer does not have enough bytes for a u16 read.����7�hp�'�hwT�v���G�U�'�i�
��G '�i�8�Q#�����8�Q��`8�Q�G������#%�8�R,Ďw���G���V�8�R�
��G 8�R�� 8�R�8�RX8�R�Uj5���U�8�XC��w���G����������������������q�aX�V���8�X�
��G 8�X�� 8�X�8�YX8�Y�U/6���U�8�`;�8�_8�_ Read u32 as a big endian integer����:�_A�8�_H�8�_8�_FReturning an error if the underlying buffer cannot support a u32 read.�ݑ�<�_g�8�_nt�w���G͐�8�a�
��G 8�a�8�c;�8�b8�b#Read u32 as a little endian integer����>�bD�8�bK�8�b8�bݑݑ�@�bg�8�bnt�w���G͐�8�c�
��G 8�c8�f�8�d8�d�����B�dA�8�dH�8�e8�ePReturning 0 if the underlying  buffer does not have enough bytes for a u32 read.����D�eq�8�exT�w���G�V�8�f�
��G 8�g8�i�8�g8�g�����F�gD�8�gK�8�h8�hOReturning 0 if the underlying buffer does not have enough bytes for a u32 read.����H�hp�8�hwT�w���G�V�8�i�
��G 8�i�I�Q#�����I�Q��`I�Q�G������#%�I�R,īx���G���n�I�R�
��G I�R�� I�R�I�RXI�R�U�6���U�I�XC��x���G����������������������q�aX�n���I�X�
��G I�X�� I�X�I�YXI�Y�U�7���U�I�`;�I�_I�_ Read u64 as a big endian integer����K�_A�I�_H�I�_I�_FReturning an error if the underlying buffer cannot support a u64 read.����M�_g�I�_nt�x���G��I�a�
��G I�a�I�c;�I�bI�b#Read u64 as a little endian integer����O�bD�I�bK�I�bI�b�����Q�bg�I�bnt�x���G��I�c�
��G I�cI�f�I�dI�d�����S�dA�I�dH�I�eI�ePReturning 0 if the underlying  buffer does not have enough bytes for a u64 read.����U�eq�I�exT�y���G�n�I�f�
��G I�gI�i�I�gI�g�����W�gD�I�gK�I�hI�hOReturning 0 if the underlying buffer does not have enough bytes for a u64 read.����Y�hp�I�hwT�y���G�n�I�i�
��G I�i�Z�8
�����������Z�8�Z�8L��Tv�����n����Z�8�
�� Z�8ҁ Z�8�� Z�9�Z�9 Z�9v�U�Z�@1��Tv�����n���Z�@�
�� Z�@ҁ Z�A�� Z�A�Z�A Z�Av�U�Z�HE�Z�GZ�G!Write u64 as a big endian integer�Ѧ�\�GB�Z�GI�Z�GZ�GGReturning an error if the underlying buffer cannot support a u64 write.����^�Gh�Z�Go��U�����n��Z�I�
�� Z�Iҁ Z�I�Z�KE�Z�JZ�J$Write u64 as a little endian integer����`�JE�Z�JL�Z�JZ�J�����b�Jh�Z�Jo��U�����n��Z�L�
�� Z�Lҁ Z�L�Z�O)�Z�MZ�MѦѦ�d�MB�Z�MI�Z�MZ�MBOr don\'t write anything if the reader cannot support a u64 write.�AOr don't write anything if the reader cannot support a u64 write.��f�Mb�Z�Mi�Z�NZ�N�Q
Should be combined with the [`has`](Self::has) method to ensure a write succeeds��g�N]�Z�Ndd�U�����n�Z�O�
�� Z�Oҁ Z�P�Z�S)�Z�PZ�P�����i�PE�Z�PL�Z�QZ�Q��ū�k�Qb�Z�Qi�Z�RZ�Rܼܼ�l�R[�Z�Rbd�U�����n�Z�S�
�� Z�Sҁ Z�S�m�8�����������m�8�m�8L��Vv�����V����m�8�
�� m�8ҁ m�8�� m�9�m�9 m�9v�U�m�@1��Vv�����V���m�@�
�� m�@ҁ m�A�� m�A�m�A m�Av�U�m�HE�m�Gm�G!Write u32 as a big endian integer�ò�o�GB�m�GI�m�Gm�GGReturning an error if the underlying buffer cannot support a u32 write.����q�Gh�m�Go��V�����V��m�I�
�� m�Iҁ m�I�m�KE�m�Jm�J$Write u32 as a little endian integer���s�JE�m�JL�m�Jm�J�����u�Jh�m�Jo��V�����V��m�L�
�� m�Lҁ m�L�m�O)�m�Mm�Mòò�w�MB�m�MI�m�Mm�MBOr don\'t write anything if the reader cannot support a u32 write.�AOr don't write anything if the reader cannot support a u32 write.��y�Mb�m�Mi�m�Nm�N����z�N]�m�Ndd�V�����V�m�O�
�� m�Oҁ m�P�m�S)�m�Pm�P���|�PE�m�PL�m�Qm�Q����~�Qb�m�Qi�m�Rm�Rܼܼ��R[�m�Rbd�V�����V�m�S�
�� m�Sҁ m�S���8�������������8���8L��Wv�����U������8�
�� ��8ҁ ��8�� ��9���9 ��9v�U���@1��Wv�����U�����@�
�� ��@ҁ ��A�� ��A���A ��Av�U���HE���G��G!Write u16 as a big endian integer������GB���GI���G��GGReturning an error if the underlying buffer cannot support a u16 write.�ƾ���Gh���Go��W�����U����I�
�� ��Iҁ ��I���KE���J��J$Write u16 as a little endian integer������JE���JL���J��Jƾƾ���Jh���Jo��W�����U����L�
�� ��Lҁ ��L���O)���M��M�������MB���MI���M��MBOr don\'t write anything if the reader cannot support a u16 write.�AOr don't write anything if the reader cannot support a u16 write.����Mb���Mi���N��N������N]���Ndd�X�����U���O�
�� ��Oҁ ��P���S)���P��P�������PE���PL���Q��Q�������Qb���Qi���R��Rܼܼ���R[���Rbd�X�����U���S�
�� ��Sҁ ��S����" All possible image colorspaces���1. Some of them aren't yet supported exist here.�3��T��I�e����d�����������������������������������		�

������ Red, Green , Blue�#���I68���I$��� Red, Green, Blue, Alpha�)���I<>���I,��� YUV colorspace� ���I35���I$�Ĩ Grayscale colorspace�&���I9;���I,���#  Grayscale with alpha colorspace�2���IEG���I$����I���I$���! Cyan , Magenta, Yellow, Black�0���ICE���I��� Blue, Green, Red�"���I57���I$��� Blue, Green, Red, Alpha�)���I<>���I<�� The colorspace is unknown�+���I>@���I$�ķ Alpha Red Green Blue�&���I9;���I��� Hue,Saturation,Lightness����~ Conversion from RGB to HSL and back matches that of Python [colorsys](https://docs.python.org/3/library/colorsys.html) module���2/ Color type is expected to be in floating point�����I���I�
�� Hue, Saturation,Value������~ Conversion from RGB to HSV and back matches that of Python [colorsys](https://docs.python.org/3/library/colorsys.html) module���	2������I�����I ����I(����I���#%���I�I����
�,�(����I��_�#%�����I��^�^��^��[�^�F�[����e�S��������
�,�������I���#�*,/18�;?A���I����
��H����I��I���79����I��I����
�L����̄ Color characteristics�����41 Gives more information about values in a certain�t� colorspace����K+Y�y<��I������$���  Normal default gamma setting���$! The float contains gamma present�����*' The default gamma value is 2.2 but for���85 decoders that allow specifying gamma values,e.g PNG,���>; the gamma value becomes the specified value by the decoder�"���K69���K4���#  Linear transfer characteristics���%" The image is in linear colorspace�`���Ksu���K ����K(����K���#%���K�K����
�,�(����K��_�#%�����K��^�^��^��[�^�F�[����e�S��������
�,���H����K��K���79����K��K����
�L�����d��L�ar�#S�q����������������"�������"|������"�������"|������"l������"l������"t������"d������"l������"�������"l������"������� "�� ����� "�� ��� ����L(����L��_�#%�����L��^�^��^��[�^�F�[����e�S��������
�,���(����L���#%���L�L����
�,�8����L���#%�L��
���!��  Decoder options�� ���!:7 Not all options are respected by decoders all decoders�t�!�MO��.�gs����������#L�#����U��%T�%����Uԁ(t�(����I��)L�)����U��*l�*����Uܝ+,�+����L̴,T�,����F(��!��M��_�#%�����M��^�^��^��[�^�F�[����e�S�������!�
�,�!�� ��!��M(��!��M���#%���M�M���!�
�,�!��d���O���E��A����������������������� ����O(����O��_�#%�����O��^�^��^��[�^�F�[����e�S��������
�,���(����O���#%���O�O����
�,�8����O���#%�O��
�����-* Options shared by some of the encoders in���&# the `zune-` family of image crates�t��P�.��
�e�����������,�����U��4�����U��T�����I|�<�����G��,�����C|�\�����G|�4�����G̺,�����O(����P��_�#%�����P��^�^��^��[�^�F�[����e�S��������
�,��� ����P(����P���#%���P�P����
�,��a�i�

vpnqs�s�t#]u(�u-�v2�w7%y<{A�~Fw�K4�P*�U߄Z�I`Ņe�Mk��pݝuB�z�c��٧������^��������,�������U����]����T����j��`����j����E����M��x����
�
i��� a�&5�,��2>�8ݹ>��D{�J��P��V2�\�b��hL�nԑt�zO�����Ʌ�ք����M�����}��|�0{�qy�v�+u�Ct�`s�{r�.r��q��m��l�pl�+j��iKi
�cHa�_�^"'T(�S.S4S:�Q@�QFSL^QRdQXKK^�Jd�JjGKpJv�I|�I�F�]E�cE�F��D�TD�ZD��@��?��?��@�K?��>��>�>�?=�<�7;�B:�N9��8�7�6�5�4�313$U2*10M06Y/<f.B�-HM-N,T6+Z�)`�(f(l'rB&xh%~$�'#��"��!�� ���T�d�m�����h�+�����h�����c��$���C
"�	�	 n
&5	,�2�8�>yD�J�P�Vs\/O������������������"BitDepth::size_of������"��������"�������B�ZByteReader::rewind�Self::remaining�	Self::len��3https://doc.rust-lang.org/std/io/struct.Cursor.html�	Self::has��
��	�����std::io����
#Self::get_u8�Self::get_fixed_bytes_or_err������ÄSelf::get_u8_err��Self::get_fixed_bytes_or_zero��ۅʅ��������ʅ����ۅ�std::io::Cursor����������������	�����������
���G�	����Self::write_all�����̈�����̈colorsys�/https://docs.python.org/3/library/colorsys.html���������png::Transformations�:https://docs.rs/png/latest/png/struct.Transformations.html�png::Transformations::STRIP_16�png��̊������̊�	�Self::get_quality���������������H���������������I�I�I�H�J��������3V��������H���������������I�I�I�H�J��������3��������H���������������I�I�I�H�J��������3��������H���������������I�I�I�H�J��������3��������H���������������I�I�I�H�J��������3Unknown bit type
No more bytes

No more space
Տ�����9>��c�?}�Aq�p)�Ϫ7�`FN0D��>�����\������}��*~
��r�p�"WW�Z{�!����Æ�=j�;����LK���@�mД�/$j�PR����46SIA����0�N��n����,!mZy#]�҂u������}�N�+A����\�1p�Bs!rJ?R�w�5U&iTF�@�����˽�`��%��0ɈТ�gCc!A@i�U���)Hc&o�@
l���S��|�U-+@�ɏ%Ip�&�I����.g�|�Z�`�P%G�E�P�I��
!6AF������ǜt'~���b�����8_�t[�a��&��=�s<Γ����lܝ��oe-fz��,�*=t����~�S4\�ӛ9b頍a]�D#Zqߪ�I:�>Ə��X)�!���*C��CT)
*�ɂ��ۇ6sxMb�%�>eڜ�c-��U<�[$&TC�Cc{���+ִ����Q�3��~�?ߚ��bB�gYHև@��\���"��F*�|l>m���6ۼ>p}�>T�e�.�?4rjOx	�p���#|,��J���8�`5o�g�
y߄�T׿|+v17�}+�I��8�ޒ�"p8�^�c$<�_n袋g��j�őF����Y選�S����D���8^��իҫ���~fF�r��Z�������+w�oX4�&^yiy�g�����v�e�H��\S�.+���Š��K��|Ν�PM��X�$�/�A/;4c��H� #��4TU���c‘�˼�2q�aɍ�bk��'��{�
G��U��#�"\#��F�
J�bѺ��t`�Ioĸ��"_��(�L����PI�>�X�j,&AI�8��_�`�r�Ȼ�̘��E0���B<:�"��~���St���A@�;��zq�2Ֆ�D��-^���F��I��C�X���S�f�f�s���\����aY��wKj�?�����6�
�;�/ �k�f�N�\��>�YH��l\��6�j���~m-�6n9��M�����s�54��m`�t��R͎t�v��s5S�Sh�:m:vц#���*C�$Ӥ�eԝ>��J8�eO����o������;�
��:��؏��9܍tr`S�v
�Ҏҽ����
����}4G�/5@w5��^O������P"�>����P��ů�I�^*D��;d�s��7��-��U��EQ�GWI�8Tt;�V�[�WB�ǽ쳌��,š��v`����+���5���ジ��^�;�}���D�F�-y.�E�����ˢ�2N^ed��¶uY�o+!6?�ސ��*�D��k���4�Ĥ-(�*2x�XX�����Wu�ME1_^v�1f���!v����q�T�N4��{����b��B�*n���>7)���P�&:�.������bd�p�U����R/��s�a6�2M��44iSU�ٯ��&��}_�6L�w�\~�r
�����j�H���s0�6F[�}�����ƙ�F�G�KU4�4��+�����H>�����eH���������5��X��u����9P��Y�>�rQ��sPwp����/��%M�B����^V��@q��k�LӀ�i��/.�\3\f�.��f,}[$}���Å�z=��_oBE�'�`�wL�F���ȣ�t/2��K�|
u����Ň^'�d�6a�i��|E1���B*�]r��*�E�$TL�B�]j__a?=E���"[2FX���}��|�%Y�~��9��,l�����ŧ������|��R���F����C�9���7#铻��n�R.��/��F��F�66T���?(�8wsRk\�Ɍ������	��"�M�2ɟI@�`d�CM�{���g�����kS���P�]U�P-f��1����w�8��G��zȸ�+
L��m��;��e=�~�9z
�-�WM�gM:�~�E��A��g�ܺ��]���o)�m���G�#�����Wo�?�	�F����Kq���d%�'.0����`�ӷ'<��[�%=d��L�,t�s��"�Vs��C���^��hUv��T�
D�g�P��s��X?�Xx�%��͎����N��q�3xs��c6^Iƣ0b���(ɐ�q�<���D����kD1
2�r
�q�@]��XQ��=�U��0���VD�sz�~�z���BDș"���R����W�L���07����Q���aH���b
v��/�<a�u2@9�3}��?*��*��u��mȤRA���1C�":{�_�#�"]�ǘ�h�88�Y����ęa���v*l�V��[�1.�jp�
s��V'�cb9�	�}K_I��\��/~kq#MD�5���f��X�!�5��������ܦ2{*�7A��Op%���*v�}��bև������]@��k�lj�t�!���7�v9qt�4	-x���-�cw���BH2;�;z��'��DKh�|�Dk�$���SOC�8v�^���/5����%k�X��
L�x�a$��o8��(���5j��a�����0A������8͞Z�Z��]g��e
�ȗ��7X7sH�@�Qk��K�,�=�5�U�`	�d6c�Fo{nZC3ޯ�����:�}��+�^1Z'N��Ȣ���Bw��U���>�dmۇ�l���_�D����fO��!U��~�(r�7�lP�A����^���17'c%�D5<�ԯ�3��Q��4��;�gẂ�Pk�������ȭ�ҔšӾ
�R� S��Gb5�\JC���-��8��PqY���KY���>����{������rCS\�����I�P�l5Z�����$L,n�5��ڛȂ��"�Ynp݌1�@m�=���/�7j������7��G����(Q) KTӅ8�Y^)u��6�����0�u����k�lo����V��G�(U���H!@S���C�"�2�S��v�ޒ..l<;�m�7:�����"�0�µ��I�°~٤K��(�	�����nKjq�,�*���>\:�m�K{8�nW��H�u��Ϫ��!/=�O"�Юhp��y�Y����ɾؿ�d���v�7�r�1�T�	Z
�����%'p鯖��s��mXBYУ�;����� �|o.����:�X˺.�^���?`��1$��9ȫff��|u�2~�?��-�T�E�O�k���aI�Qa'��'���Vd��ҥ`̠�A5K9�z̥$-�[+k��:/�� � ��U���8/��Ө��=-s���%|$<ٿ9�k�ߓ��z8�)m�:?>Ō����G�3��ϖ<y<T,�Pnɨx�_�G�x�������nIduYǴ���+������9\�P0o�)�v
��yy�RE�C���g%KU�9�!���ѐc-�c&��D:�lY����*DZ"�b�*����Ť9��]n��o��"2�W��T�W�S��۾��f��g\� �|`H��T8��&�b�cY�X�|V���A˛)���3�3�ΒH)�'��
�B�ob���_8`ܺxN�~����>q�\|���4Ȫ�F�,��ߴ0����P���������s^wj�w�H�7|'!N�nP�}��
X�
�(���ٯ!���;@m�1��1d@����L"�ye��a+�R���3��}p<Y��GY�!��ͽ���y�����ov�e��"k���~��e�/a�۟W���7&?Dt+d�̽��A�����sk�K��!␟#�r�M�Ɯ��ؠ��ϐ�m����U���*9��}�6�,�a&���M��v�kn�P��j����Q�H�ϓ;�o�T��>��Y!�ij0����7����7~6tP�Pc�����-͗7�����O������kU�/*P��`��-��BQ�]�{�M��,u��Mb�~ۺa�Iml�UrGD��=�x
�6���惤��9�!�;,�l����xbUR1�o��`�-�`/�&�C'��3,߯`�"n3~n�N��dz�+��r�ة�f��#=���L���.8k\�I�7�
�1��`���q����j����Z�5
j�\�sJ�|pѸמ�ȋ�����,3E�ɆX�!kR����M�T��V5:�B�e@�t~�ɮ8�_�I��v-E��ϰaszz�O��>ǰ��4963I��!#�|��z9v�y0���O���4I� ݾ�eW�J��x����t�*�@���U��D����c�@��q�5����Nq��.	�:qeY�F�oM+��z1!2����@�3�1Ir��)f5�/0@��B>�@������z,8	�?�6S����8W�F��r�"�(�jN�P�H��+h��y���#��d�x��0
��8̜�ek�
��A��),�,3����0�V	]A��s#��C��!,�d@��VN"��AYэ?D��Ę5�#��V���h����޽	Z�@P�x�TS&���[-KU���u^�p٭::��x������SeJ4�3��ֽ�(��'�A�ܔ��Ti�{NY�K��$��(�dg���z��M�
�hCd\�ŲD�i���pwoޣ�J�10���?�0�3��لɠ�Y��"05��oƴv~ܸcE;�Z���7�$�B��p���SDU~�=��9�����`5qW�(��[�p�Ҍ]$ΐ�M��|6P	�>M��8I�~�$���K�u���Y�����'�R)�;Z��BԜJ(�)V�,4�n��0��ԟ�seؘ�y���4��x�f��%d�6^�0�q\DT��{K�Cz�h��u˸�%�Ҽ�iB�1M����]���W/��`)�qFԬɴz^��{0��dۊ�}���q�,�g�M�3�y$�<|:T���8���zĜ���v�ۅ�b��c��M��������'���s?�h�1F�Z�#��<����� ��X��f
�\�;�b�	$��} �F�j�s�P�Y�V`�ҿЀ=UL�FO�%qkdl�.f�ʙ�ޔ��g[�zn�%h~�:3�5E B�;
%+F��ļ|Pզ�*Pt��}�Jn�4�A첬�Â�X
����zNYq�a� ��;�ȆZ"�ࣧrif�ikW
@�-<��e�v��Ĭ����'�D|ooi��
�2E\�k��	��d��O, �8�|#L����Y��U�;�(��q3��ꞣ$դ�A�� vsƝ1e�N���г�京��N]'%_���+�b5��ܜ��Ygc�Jim�ܵt�q
pGX~a:FuxF���n��K,�Q���z�P-����|��t\p�1�
�HK�dM�M�@o"r�����U�F�$Q�����„m�;yw�`�'&oK��J6�aSthT�eD��@����x<>4�<���צ�ޓ�Q��+���I���l���z+�oT�Ļi$�*�R�QjTp�����,˚�K� ?�N�l}���P����w�`$���Le���T3K������UGw���
>S��YT�:�1EY���n��0��7r����,��BǻjSy&܆���ŦM�,E^�^%�e�%������UPRXt�#�m����v����T�\�v�S�R�d�f�r�eT�T[c�ce�t�K���48!�P�T�U�V�W�X*Y�YxZ�Z�ZR[l[�[�[
_�ab�c�c�c�g�g�g;hzh�h�h�iI	j�kzl�p�q?s�s�txu�u�v�wIy4{�	���E��������!	���\��
��>�����*�����������K�����z�&�z����2�������3�����j��i�����3�r���������
��
����
�����������s��������������=�6����
�.��������/�_���:�;�n�������;���*�W
���.��
����$���V����]���5���F����MW����	�
�k��n
�
�
'o��|�
�x�E�:m��0��RB !W!"m"�"�"�"@#X#q#�&�(>)�)�)	*H*�*�*�*+*+�+�+�+-,K,m-�-2.�
/i1�2-3�3�3�34<4�45r5�5�56:7�7p8�8
9(9x9�9B:`:�:�:�:c;�<�=Q>�>�>�>6?T?@@�@�@�@"AuA�AB�B�B�C�D�E�FGtG�GVH�H�I`JZKTL�LM7M�MN*O�O�P�Q%R�R�R'S>SaTAU�V�WX�X�XY0YSZ3[�\�]�]7^P^�^�^`�`ubhc�d�dPe�efsf�fgvg�g<h�h�i�j�jkTksk!l@l�l�l�lGmn_o�op1p�p�pPqdq�q�q.rIrdrr�r�r�r�rs!s<sWsrs�s�s�s�s�t�t�tuPu�u
v%v@v[vvv�v�v�v{w�w�wx2xLxfx�x�x�xgy�y�y�y)z�z�z�z{2{M{h{�{�{�{m|�|�|\T�T�ZXc�c%hd���q����G���06!�!�
(�/7�=�c�m�Z^[�[�g0h7h�hj����������������������+�����������
{���!�!"e#)")*)2):)�*�*+�+�+=,}-�/�/�/�/�3�3.4�4�5�5&7.76799�9R:�:�:�=�=�>�>F?@�@�@OA�F�LR�W�].d6d>dFdNdVd^dfdndvd~d�d�d�j�jek2l�l�l�m�mp#p�paquq
r�s�s�tu�u�v�w�w(x�x�xxy�y�z�{~|�|))))))
(()(()'''((((((((((((((











((((((((((((((([T�T�U�V�W�XZYZ�Z-[�[�^�a�aWc�c�cJg�g�g�g?heh~h�hi�kPlRpJq�r�s�t<u�u�v�w�x~zX~H�����Z�@���Ԇ��Ξb���������?�������`����;����G����H�ӱ�+�o������7�]��������B�k���E�s�����V���.������B��������K�������F������D���O�n�F������$�������������$����� ��������^T�}l	Z
C.�.
�
-�4��V�:��:����h� � 5!�! "K"o"�"�"�"�"#B#&m(�(B)h)�)�)�)�)
*3*L*r*�*Y+�+^,�-m/,1T1J2p2�23^3�3�3O455�5�6�7�758[8�8�8;9�9�:;[<�=><>v>�>�>g?M@�@�A�AB�B�C�DEyF$GyG�G[HNIJKL�LMLM�M�N�O�P�Q:R�R�R,S
T�T�V�W,X�X�XY�Y�ZG\-]�]=^e^�^�_�`bc�c�d�de;ene�e�e�e8f^fwf�f�fg;gag�g�gh'h`h�h�i�i�j�jk�kol�l�m"oJo�o�oDp�p�q�q2rMrhr�r�r�r�r�r
s%s@s[svs�s�s�t1u�u�uv)vDv_vzv�v�v�wx6xPxjx�x�y
z�z�z�z{{6{Q{l{�{�{�|�P�T�T�T�T}U�U�U�U�U�U�U�U�V�WX&Y�YtZ�Z�ZN[h[�[�[_�ab�c�c�c�c�c�c�c�c�g�g�g�g7hPhvh�h�h�h�h�i7jDj�kul�p�q:s�s�tsu�u�v�wDy/{��������@����̆ݛ���X�������
�9����%�Ѩ~�ѩ����G���ɫu�"�u���ǭz�.���̯ԯ��/�����e��e������	�/�H�n���������õ����ĺڻ����������n��������������8�1�����)�����o�u�{���������*�[���5�6�j������6���%�R���)���
������Q����X���0���A����HR����	�
{f��h
�
�
#^dj���w���s�@�5h��+��M= !M!S!"4"i"�"�"�"�"#<#T#l#�&�(:)S)y)�)�)�)�)**D*]*�*�*�*+(+�+�+�+(,I,h-�-!...�/=1e1[2�23)3o3�3�3�34:4�45m5�5�5667�7�7F8l8�8�89&9s9�9=:^:�:�:�:^;~<�='>M>�>�>�>�>1?R?�?@�@�@�@AbAoA�A�A�A�B�B�B�C�D�E�F�F	GoG�G�GQHgH{H�I[JUKNL�L�LMM1M�M�MN$O�O�P�QRR�R�R"S8S[T;U�V�W
XX�X�XY*YMZ-[�\z]�]�]1^I^�^�^`�`nbdc�d�d�d&eLee�e�efIfof�f�f�fgLgrg�g�gh8hqh�h�i�i�j�j�jkNkqkl>l�l�l�lCm�m3o[o�o�op/p}p�pJqbq�q�q)rDr_rzr�r�r�r�rss7sRsms�s�s�s�s�t�t�tuLu�uv!v<vWvrv�v�v�vuw�w�w�w.xHxbx|x�x�xay�y�y�y%z�z�z�z{.{I{d{{�{�{g||�|�|�|�|�|}	}}}}}"}'},}1}6};}@}E}J}O}U}Z}`}e}j}o}t}y}~}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}~
~~~~"~(~.~4~:~@~F~L~R~X~^~d~j~p~v~|~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~$*06<BHNTZ`flrx~�������������������������� �&�,�2�8�>�D�J�P�V�\�b�h�n�t�z�����������������������€Ȁ΀Ԁڀ����������
����"�(�.�4�:�@�F�L��T�T�T�U�U�U�U�U�U�U�V�W�XWY�Y�Z[l[�^�a�aSc�c�c�c�c�c�cFg�g�g�g�g=hRh|h�h�h�h9jzk;l=p5q�rws�t'u�ulv�w�xizC~3�������E�+�u�І�����^�������������*�֨������K�Ϋz�&���̭�2�ίٯ��3���j��k��������5�J�r���������-�V���0�^�y���A����j���~�-�{������6�����{�B�s�y�����������/���:�Y�1������������s���|�v�����������������I?mhW	D
-k
�
�
)bh���A�%x�x�%����S��� 1!Q!�!"7"m"�"�"�"�"	#@#&X(�(@)U)�)�)�)�)* *J*_*�*F+�+K,�-#.i/)1@1H2]2�23\3q3�3<4"5�5�6�7�738H8�8�8(9�9|:�:F<�=>)>t>�>�>T?:@�@dAuA�AB�B�CnDjEdF�FGtG�GVH9IJK�K�L�LM7M�M�N�O�P�QR%R�R�R'S�S�T�VvWXX�X�XY�Y�Z2\]�]�]7^P^�^�_�`	b�b�c�d�de(ele�e�e�e6fKfuf�f�f�f9gNg�g�g�gh^hsh�i�i�j�jksk\l�l�mo6o�o�o1p�p�q�q.rIrdrr�r�r�r�rs!s<sWsrs�s�s�tu�u�u
v%v@v[vvv�v�v�wx2xLxfx�x�y�y�z�z�z�z{2{M{h{�{�{�|�|�|�|}}}}}} }%}*}/}4}9}>}C}H}M}S}X}^}c}h}m}r}w}|}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}�}~~
~~~~%~+~1~7~=~C~I~O~U~[~a~g~m~s~y~~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~�~	!'-39?EKQW]ciou{���������������������������#�)�/�5�;�A�G�M�S�Y�_�e�k�q�w�}�����������������������ŀˀр׀݀���������
����%�+�1�7�=�C�I�O��Z?[Z[�[�[�^�a�a�c_g�g�g�g�gIhoh�h�h�h�h�i�iAj�kclzprqs�s�tau�u�v�w)y{�~{�8���.��Ʌ������F�ơ�g�ݧ���b���ݩ��0�����Y��a���X��n���d��n���I���Q����(�A�g���2�����ܵ|�����m����������U�����������'��p����������#�T��+�,�`�����l�%����9��������������8�����E������(�r�z/?����	�
iT��T
�
�
w��M��|�`�'�O���|��:* � �!*"_"y"�"�"�"�"2#L#`#q&�(�(L)r)�)�)�)�)�)*=*V*|*�*�*�*+�+�+�+,9,P-y-�-+.t/61^1T2z2�2"3h3�3�3�34*4�4�4\5~5�5�57�7�7?8e8�8�899b9�9&:N:�:�:�:G;m<�= >F>�>�>�>�> ?B?�?@t@�@�@A9AlA�A�A�A�B�B�B�C�D�E�F�FGPG�G�G2HcHsHwIFJ@K9LkL�L�LM)M�M�MNO�O�P�QRjR�R�R4S9TU�V�W�W\X�X�X&Y+Z[r\X]�]^E^�^�^�_�`Jb@c�c�d�deEexe�e�e�eBfhf�f�f�fgEgkg�g�gh1hjh�h�i�i�j�j�j�j=kakl.l�l�l�l,m�m,oTo�o�opplp�p3q]qqq�q�q>rYrtr�r�r�r�r�rs1sLsgs�s�s�s�sqt�t�tuBu�u�uv5vPvkv�v�v�v^w�w�w�wxBx\xvx�x�xJyty�y�yz�z�z�z{'{B{]{x{�{�{P|z|�|�|�Z7[T[�[�[�^�a�a�cLg�g�g�g�gAhgh�h�h�h�h�i�i;j�k[lnpfqs�s�tUu�u�v�wy�z�~c����"�ׄ������՝:����[�ѧ����V���ש}�$�y���M���U�|�L��b���X��b���=��E����� �9�_���!�����ɵo�����`�������r���H�����������!��c���	��������N�y�"�#�W�����_�����0��������������/�����8��������i�m&2����	r
[F��F
�
�
q��D��o�S��F���s��- � �!!"V"p"�"�"�"�")#C#Z#h&�(�(C)i)|)�)�)�)�)*4*M*s*�*�*�*+r+�+�+,3,B-s-�-%.n/-1U1K2q2�23_3�3�3�3�3$4�4�4N5x5�5�5�6�7�768\8�8�8�89T9~9:H:�:�:�:9;e<�=>=>w>�>�>�>?<?�?@f@�@�@�@$AfA�A�A�A�B�B�B�C�D�E�F�FGBG{G�G$H]HjHiI8J2K+LVL�L�LM M�M�MNO�O�P�Q�Q\R�R�R.S+TU�V�W�WNX�X�X YZ�Zd\J]�]�]?^�^�^�_�`;b1c�c�d�de<eoe�e�e�e9f_fxf�f�fg<gbg�g�gh(hah�h�i�i�j�j�j�j.k[k�k(l�l�l�lm�m#oKo�o�opp]p�p$qWqkq�q�q5rPrkr�r�r�r�r�r
s(sCs^sys�s�s�sbt�t�tu9u�u�uv,vGvbv}v�v�vOw�w�w�wx9xSxmx�x�x;yny�y�yz�z�z�z{{9{T{o{�{�{A|t|�|�|�ZC[\[�[�[�^�ab�cg�g�g�gMhsh�h�h�h�ij�kgl~pvq#s�s�teu�u�v�w-y{�~	����w�2��ͅ��	��J�"�k��
���f���ߩ��4�����]�
�e���ŭ\��r���үh��r���M���U����,�E�k���4�����޵����ût�����������\�����������)�%�w����������%�V���0�1�e�����s�*����>��������������=����L������-
�y��4F����	�
nY��[
�
�
y��R����g�,�!T�����A1 � �!/"f"~"�"�"�"#9#Q#b#v&�(�(Q)w)�)�)�)�)**B*[*�*�*�*�*+�+�+�+,;,U-{-.v/;1c1Y223'3m3�3�3�3
4,4�4�4a5�5�5�57�7�7D8j8�8�899g9�9+:P:�:�:�:L;s<�=%>K>�>�>�>�>%?D?�?@y@�@�@
AMA�A�A�A�B�B�B�C�D�E�F�FUG�G�G7HeHxH|IKJEK>LL�LM.M�M�MNO�O�P�QRoR�R�R6S>TU�V�W�WaX�X�X(Y0Z[w\]]�]^G^�^�^�_�`ObEc�c�d�d$eJe}e�e�efGfmf�f�f�fgJgpg�g�gh6hoh�h�i�i�j�j�j�jBkck	l0l�l�l�l1m�m1oYo�o�o	p!pqp�p8q_qsq�q�qCr^ryr�r�r�r�rss6sQsls�s�s�s�svt�t�tuGu�uvv:vUvpv�v�v�vcw�w�w�wxGxax{x�x�xOyvy�y�y z�z�z�z{,{G{b{}{�{�{U|||�|�|.[�[�^�a�aKg�ggh�hi�kQlSpKq�r�s�t=u�u�v�w�xzY~I����[�A�������������@��������a�����<�����H�����I�����,��� �_� �C�l���F�t�����W���/�������C�����L��������G���P�o�G������%�������������%�����!��������_U�~m	[
D/�/
�
	�5��W�;��;����i� � �!L"�"#&n(�(i)�)�)4*s*�*Z+�+_,�-n/U1q23�3�3P465�5�6�7\8�8<9�9�:;\<�==>�>�>h?N@�@�AB�C�D�EzF&G�GOIJKL�LNM�N�O�P�Q<R�RT�T�V�W.X�XZ�ZH\.]�]g^�_�`bc�c�d<e�e�e_f�fgbg�g(h�h�i�jk�kpl�l�mKo�oEp�p�q�q�s�t2u�u�v�wx�x�yz�z�{�|.[�[�^�a�ai�kRlTpLq�r�s�t>u�u�v�w�x�z[~K���\�B�����О������A��������a����=����J����J�ձ��-�D�m���G�u�����X���0�������D�����L��������G���P�o�G������%�������������%�����!��������_U�~m	[
D/�/
�
	�5��W�;��;����i� � �!L"�!�"
"#&n(�*Z+�+_,�-�3P465�5<9�9�:;\<�>h?N@�@�AB�C�D�E{F'G�GPIJKL�LOM�N�O�P�Q=R�RT�T�V�W/X�XZ�ZI\/]�]h^�_�` bck�kpl�lEp�p�q�s�t2u�v�w�x�yz�{�|[p[�^�a�aTh�hi~k?lAp9q�r{s�t+u�upv�w�xmzG~7���I�/�y�����������.�ڨ�����O�ҫ~�*�Э��6�ݯ��7�±n��
�L�v�1�Z���4�b�}���E����n�����1����:���������3�	�
�>�]�5������������w�����z���������������MC	ql[	I
2p
�
�
�#��E�)||�)����W��� :"�"#&\(W)�)�)"*a*�*H+�+M,�-C1_23s3�3>4$5�5�7J8�8*9�9~:�:J<+>�>�>V?<@�@yA	B�CrDnEhFG�G=IJKL�L;M�N�O�P�Q)R�R�S�T�VzWX�X�Y�Z6\]�]T^�_�`
bc�d*e�e�eMf�f�fPg�ghuh�i�jkuk^l�l9o�o3p�p�q�s�t u�v�w�x�y�y�{�|"�";#K#�#�#�#�#	'(� +!5!?!J!W!a!k!�!�!�!�!�!�!I"S"]"g"r"�"�"�"�"�"�"$�$�$%%%#%_%i%s%~%�%[&e&o&y&�&�&'_'i's'}'((�g�hCj���-.nAG�L/,�.12{238�9�9[;
<�<	@YA!B�B�D�DGE�EFcF�F"G�G�GDH�HHI�IJiJKvK�K2L�L�LLM�M1N�N;O�O�):*u3�3:4�4�4h5�5-6�6�6Z7�7�=>}>�>??�?n.�02z23t39�9Z;	<�<�=XA B�B�D�DFE�EFbF�F!G�G�GCH�HGI�IJhJKuK�K1L�L�LKM�M0N�N:O�OLP9*.,�394�4�4g5�5,6�6�6Y7�78>|>�>>?�?@�^�ab�k�ur�������Z���#�u������q��������J����wDY
�
���e��?/ d"�"7#q<e2�D2*�3(4�4�4`5�5%6}6�6H7�7
8>u>�>7?�?@i2�D6*�3,4�4�4d5�5)6�6�6L7�78>y>�>;?�?@G[�[_�a	b�i�knl�p}q*s�s�tlu�u�v�w4y{�~����9���������Q�*�s�����o�����8���f��n�k����r� �|�V��^�����������������g�����������*�|���"���*�[�5�6�j���x�/����C������������B����Q���!���2�~�9K���	�
s^�`
�
#�W���l�1�&Y��	$��F6 � {&�(+�+,Z-.4�4f5�5l90:�:Q;x<*?�?~@A�A�B�C�D�E�F]G?H�ISJMKFL�L�MO�O�P�QzRSIT)U�V�WlX�X;Z[�\h]^�^�_�`ZbPcGkl�l6mvp=q�q{t�tLuhw�wTy�y%zZ|�|����ܡYT�T�Z�ZR[�[Qc�cDg�g;hzh�h�i�\�����թ��z�����i�����3��ǵ��@��w���������
'o��/!�!"�"�"X#�(>)�)�)	*H*�*�*+�+�+1,q-g/'1F2�2Z3�3�3"4�4v5�5�6�718�8�89|9F:�:�:�=>r>�>�>:?@�@�@"A�FTL�Q�W�]�c�deje�e4fsf�f7g�g�g\h�i�j�j�jXk%l�l�l�mo�o�op�pTqhq�q�s�s�tu�u�vw�wx�x�xky�y�z�{q|�|�g#hܳz��!�(�/7�=�c�mr�u!x�z�ghгn��!�(x/7�=�c�m�q�ux�z
#'+/37;?San{������������
/AHU\gpt}�������������-7Ebimqu���������� '4ERVZm|������������������	
&-18?FSW^eipt{�����������
		"	*	2	:	B	J	R	Z	r	�	�	�	�	�	�	�	�	�	




:
N
a
f
v
�
�
�
�
�
�
�
3Lcz�����
%@a������
/
N
m
r
�
�
�
�
�
�
�
�
,16;BGO`r�������2D[u������#(0;@HSX`emu������������������� /<APUdiqvz~��������������������+<DIQVZ^fjrv~�����������'9KOWw��������	)16RZ_u�������$<Pdhp������!?Gfn���������).:?KP[`lqy~����������������	(-27?DLQV^r�����!5Jg|������������'8MUglty~�����������$2:IViw���������������������
"(.4:@FLRX^djpv|��������������������	%,3:AHOV]dkry�������������������!(/6=DKRY`gnu|������������������$+29@GNU\cjqx������������������      ' . 5 < C J Q X _ f m t { � � � � � � � � �g)h0h��}��!�!"))")*)2)�/�/�/�/7&7.7�=�=&d.d6d>dFdNdVd^dfdndvd~d�d�m�mr�u#x�z�Z_[�[�[�[�h"j#j$j%j&j'j(j)j*j+j,j-j.j/j0j1j2j3j4j5j
�������������������������������������������������	�
���
�3�4�5�6������������������������������������������������������
}�����������������i#j#�*+�+?,-�304�4�59�9T:�:�[�>H?@�@[A\A]A^A_A`A�F�F�F�F�F�F�L�L�L�L�L�LRRRRRRXXXXXX�]�]�]�]�]�]�jgk4l�l%p�pwq�s�tu�v�w�xzy�y�{�|�U�V�W�X[YZֆ��x���;������� �G!�� � �r ����)�A�B�GzH0MN�Zd[�[�h6j��������¯���7����������
��k#�*�*#+�+�+D,�-�3�354�4�5�59!9�9Y:�:�:�>�>M?@�@�@aA�F�LR	X�]�j�jlk9l�l�lp*p�paq|q�s�s�tu�v�w�w�x�xy�y�{~|�|�/|��Y%�mK�_.=$���{�#�lJ�^<P"�6���!�k5�I�]-r;O �4�,q����j3�\+:N�2@��*p����i1~�[)9M�0?��(o
}��Z'n
�L`>�&�������
�Z�Qb��Z����9>��c9�
�..j�~$�&u���core_intrinsics�derive_clone_copy�����9>��c�ז�7Ww���8�bD�����9>��c��GT,4���x���P�N��9>��c>�B�Rŏ�~��O\��	�����9>��c��Tm�t4}�J���	��	����9>��c��������m�JEV����9>��c��
-#z�Q�
�'�eq�����9>��cA�^��
	����R[�����9>��cim�����
�Z�PE�����9>��cx',݈�$crate::const_format_args�0��"]���Z
fmt_internals�const_fmt_arguments_new�����9>��c���3�m��8�_g�����9>��c���iW������v�N��9>��cƝ��
����e�f\��		derive_eq�������9>��c�6�H��5~$����	��	����9>��c+&Sc.w�4��m�Gha����9>��c��R6w���
�'�dA�����9>��c(ͦ��������Qb�����9>��c�s�����t�����	��	����9>��c�ݸ�X�B��
�Z�N]#����9>��c��p1C�$crate::panic::panic_2021���#��]panic_internals���S�R��9>��c4�*��Hd��8�_A�����9>��cF>x�F�����u�)N��9>��cn1b-����}����	fmt_helpers_for_derive��_�_��9>��c���"�ʊ�.u�=���	�`�`��9>��c
�j=�����m�GB�����9>��c���	J���
�'�bg�����9>��c�ܱ�#�V����PE�����9>��cU�ʱ^��&~$�!���	��	����9>��c3|yv4̑��
�Z�MbS����9>��c<��j�Le��	.��"]W��	��	����9>��c�=zD��
O/����	��	��9>��c|���tn���	��	����9>��c-�$�;����]-��	��	�_�_��9>��cKWT�s��^�
�'�bDT����9>��c�sybCa�6����N]�����9>��c��,�ة����!���Z����9>��clB1+7�b�H���	��	�_�_��9>��cJ=�n�D�~�
�Z�MB����9>��c/����C��	�����	��S�R��9>��cIU���+��h,^���	��	��9>��c��F��ю���&,�����9>��cP��=3�y~$����	��	����9>��c�5K�� ���I�hp	����9>��c@�KE 
&��,V��	�����9>��c�־�@���
�'�_gr	����9>��c��fz]
F����Mb�	����9>��c��y�厇���&����9>��cRz~!
�{�<���j��	����9>��c^�&L!�R�
�Z�Jh3
����9>��c���Ie��T;{	��	�����9>��cԕV�R���tz�x	��	��	����9>��c��G,��Uh��I�gD�
����9>��cnLo@-40��+��	��	������9>��c�����?3�
�'�_A6����9>��c��u�-�����MBf����9>��c:V�8v&i����(�����9>��c�L��Iz�t��
��	��	����9>��c�8�A�[e�
�Z�JE�����9>��c���o��F��:A	��	��	������9>��c�ڋ�6��~$�1��	��	����9>��c�H})��Q��m�R[�����9>��c/��?E����I�eq�����9>��c�������t+���	��	����9>��c(�}]I�d�����Jh,
����9>��cEo�A3��cmatches���(��|Z��}s��9>��c/_�g������	��	�_�_��9>��c���ot�k��
�Z�Gh�
����9>��ci~oވ��W�3:���	��	�_�_��9>��c�#����҃��%	��	��	�_�_��9>��c[�������m�Qbh����9>��c�s_�G�r��I�dA�����9>��c@*��+��?~$����	��	����9>��c�i7$����JE�����9>��c̦���C���8�hp+����9>��c$5�]�Ɋ�~$�(��	��	����9>��cL�b�Vg���	��B.��}s��9>��cx�)�!��!�
�Z�GB�����9>��c��5G<�to9���	��	����9>��c��j�E�+�<�(��	����9>��cyK�i�{��m�PEY����9>��c��1�UTk���,�����9>��c`��i#w'��I�bg�����9>��c���]� .��?���	�����9>��c�jbNj�@����Gh����9>��c�÷�x���8�gDJ����9>��c��(�������,�	����9>��c��t$��"������	�����9>��c�[�}7�]~t����	��	����9>��c�X��?1ca~$����	��	����9>��c��]��;��m�N]F����9>��c�
���[���,�
����9>��c5g��}E���I�bD�����9>��c�AS�L����������9>��c@`��h:��@��	��	������9>��c/�@��Cs�����GB<����9>��c2!�K��P��8�eqk����9>��c|MW<[&���W���7��v��9>��c�(�`��Q�[���	��	�_�_��9>��cC�i�K���5��	�����9>��cӄ��'Â���
)��	��	�_�_��9>��cƤ�\ +���m�Mbl����9>��c�Ȁ�h��A���2�����9>��c]qɫ�����I�_g�����9>��c�_O[e����&F
����9>��c)�~�	[�Q��?��	��	�_�_��9>��c��_l;_j��8�dA\����9>��c?�H��7C����U���v��9>��c�n=����t���	��	����9>��c.��܀��i5��	��	������9>��c�/l�H�O�~$����	��	����9>��c_���܆���m�MB_����9>��c�K����
�'�hp�����9>��c0�N��A<�	�	���9>��c�X��W����I�_A�����9>��c�k������
�Z�R[����9>��c
|Gk��?t-?&��	��	����9>��cR������8�bgy����9>��c��24�����T��v��9>��c�@�;��~$����	��	����9>��c���T�2,���4���	��	�_�_��9>��c�X��d�q���m�JhA����9>��c4`�`F���
�'�gDp����9>��c6�����1/�������po��9>��c����Q��k���#2�po��9>��chu}�;ݒ�h��o�n�n�nVn6nn�m�m�omoGo$o�n�n�nynt��m�mx�5oo�n�n�ncn?nuo(o�n�n.n�m�o9o�n�nln!n�m~o,o�n�n2nn�mio o�nun*n�m�oWoo�n_nn�mqoKo�n�n}nMnn�m[oo�ngnCn�m�oyoOo�n�nQnn�mdoBo�n�npnHn%nn�m�m�oSo0o
o�n�n�nZn:nn�m�m�o�m�o_o=oo�n�np�ol��n�o��d�>�Q�|���ux�t�r�pq�T�c�B�X$}^{�y|w�����~�|�zy�v$u�r�pԇ��ʃځ��}�{+zxKvt�q�o
��Ȃ���z;yw�uYsNq9�W�ztSrRpB�%�4���~����l��`~�|�z�x��}�{�y�wv�s�q�oކYu*sq
�(�5��"�1~a|���~�|.{jyLw�u�s}q�x�v�t�r�p������p�#`}�{�y�w�u�s�������},|`zHx�v�o����\�o���̈�x�t�r�p��r���`�|P}|{�y�w߄���~�|�z+y
wIusq��������}|Pz8xuvjtCrBp2���Ӏ{Zy<w�uxsmqX�v��trrppa�D�S�2�Ά������~�|�z�x��}�{zx;vt�q�o��xuIs>q)�G�T�.�A�P~�|$���~}N{�ylw�u�s�q�x�vu�r�pć������H�}�{�y�wv�s�%�ʁ�!~Q|�zex�v�hODHT ���E\�k��	���aSthT�E��A����q�3xs��|6PH0��ԟ�P[�}�������H� #\$դ�A����*9��}�
��8̜�"�+
L���9�z̥$��/5���8sJ�|p�Ϫ7�`Fyw�`�'����P����j����Q�X)�!��2�#�"\#�bGY�!��b�	$��}ks���%|$<����g%KU�'��'��ߒ�A��),�,$|�U-+@��fz��,�*=,��/�7jg-�`/�&����1���p�1�
��k���4�Ĥ��q�5����}_�6L�w��F�66T��$��o8��(;���9܍t�U���8/Ϙ�T��>��Y����s?�hf*�7A��*��bB�gY<�*�D��_oBE�'��D�F�-y��7&?Dt+d�U���H!@p��v-E���4963I��!	Q) KT�j��SeJ4�32�BԜJ(�)N��'�D|o��d��O, ��
pGX~a��UPRXt��s5S�Sh�:�I�8Tt;�d�p�U��G�KU4�4����VD�s�C�X���s�mXBYУ��<y<T,�P��f,}[$����\�����\���u�b�cY�X���#��V���+�I@�`d�C�0�q\DTTz+�oT�Ļ�yiy�g��U8wsRk\�����k�l.�%k�X9r�7�lP�AQ9��]n��o��\�1p�BY���n��0��ۇ6sxMb57~6tP�P���0�u���m���v�e�V���v`����Bw��UK�d�x��0!����v�ۅbM�{��� �|`H�X���}��|�|��t\���U��D���?*��*
�ȗ��7A���ジ�œ��M���~@i�U���N�\��>�z�m`�t��q��k�LӀ��PM��X�$Z4��{����q�@]��XQYǴ���+��:?>Ō����9�!���ѩc�����-��>Ə��14	-x���-1�c‘�˼^3�ΒH�3����0�V%�B��p��B+��r�ة���ؿ�d������j�H���nW��H�}���>�dm�LO���4I�ɐ�q�<����ֽ�(��3x
�6������� ��X��iYH��l\�{�aY��wKv�>����{�^����P"����+�����UrGD��=��Ѹמ�ȋ�Y�K��$��6>����P�ϑg�ܺ��]���-�T��0b���(
'N��Ȣ�J���+���5��ٯ��&ԵOp%���*v+\����`�I�°~�w�x������g�P��s�m�1��1d��"]�ǘ�r�M�Ɯ���j����Z��%G�E�P�I#�t�*�@��%��0Ɉ�̘�k#�m����v�ؠ��ϐ�m�@�mД�/v��/�<a�X7sH�@�QB�|�Z�`�P"�*C�$Ӥ��ȭ�ҔšX\JC���-[Z�����$Lb@����L"���e@�t~�?D��Ę5*�K��(�x�3��ل�=I�~�$�J!6?�ސ����
L�x�a:���8�`E�,��ߴ0���X?�Xx��%�ҼW"p8�^�J`�ҿЀ=Un��8��PqY\�n����,!��"��F>�������	��Ө��=-�v�kn�P���7�����1�o��`��L�FO�%qo�@����x�?�N�l}۫�����+wS3K��ϯY�����L/�� � �ڗ��y���#� j�?����w�Kq���d%���C��!'Z�@P�x�T--���ܖ
*�ɂ�4`	�dE��;�
�@�3�1I���}�N����9�!�������b��O�������iB�XYT�:�1E�w�`$���P��Y���?}�]g��e@'�A��4BDș"���mZy#]���1$��9�17'c%�D5Sw�5U&iTFf��#=���F�$Q���uY�o+��6�,�a�M��,u��n��K,�Q�\�P0o��!�ij0����zq�2Ֆ�p9v�y0����oX4�&^TM��44iSU���
!6AF$���>7)��Q��4��;U�7�v9qt�0�z,8	�?*D��;d�n�4�A�x*�|l>m��?�b��B�*n���D���O�	�F����:FuxF��ғ��nIdu��a�Iml��k��K�,�C�$TL�B����KY��],�g�M�3�_�I�P�l5ac-��U<7�T�W�S�E�ɆX�!k:qeY�F���c6^Iƣ	�]j__a?=�	�}K_I��$,E^�^%�e����c�@�v~ܸcE;�@HK�dM���\3\f�.��f��g\Ҳ�^��hUvJim�ܐ/ �k�fy-�[+k��:�<;�m�7t���o)�m�Aq�p)��Ynp݌1e�\~�r
���)�v
���Å�z=���z�~�z����8�|#L�^�;�}��֝��s�54�a�����==�5�U�D����U�����Â�X
y���„m�;�Vd��ҥ���������ޔ��qS���C�qeH�������(�L���f,n�5��c�2q�aɍ_4\�ӛ9b�.�8^��ի�P�r�ȻjN"��AY�)>�rQ��sP��u����D����kDu��Ϫ��~ů�I�^�v��Ĭ����京��N��aH���b
�>ǰ�����`�ӷ����:�}�H�Wu�ME��hp��y�Y��̽��A���*����Ť�`̠�A5K��h��u�V#�|��z
�@m�=��f˛)���3������Ɂ��z8�)mۜ�%����������ęa��t[�a��(�F��I�r�~���䯼	�>M��8I����Q��&oK��J6�&���M��������l*�Ҏҽ���f��X�!�5'�T8��&������,3KU���u^�/RA���1C�}���q�^jTp�����R����M�T�u����9���۾���	]A��s#&*Pt��}�Jw����U��+v17�}+�H:�����"useؘ�y��Q}�>T�e�Aye��a+�Zqߪ�I:01_^v�1f��e=�~�9z
���u��mȤD�i���p:V��[�1.�!��
�����Q��+���I�Le���T���G����(i����}������Q�3:�ɴz^��\ ��;��|g[�zn�roM+��z
%+F��u�,��Bǻ�����zNz��:��؉Cd\�Ų9������7h��ܦ2{)�6ۼ>p@	�p�C˽�`���xbUR�~m-�6n9}���N�u�2~�?����5j��<�1F�Zg�5E B�;t��!v��j�t�!��/�7|'!N�n�3��ꞣ���P�&:�.�r��)f5�-(�*2x���v*l� ��#|,��JDD��-^��q7��-��U�]U�P-f�����0�N��'.0���kU�/*P��kdl�.f��p��V5:�B�=j�;���
�PI�>�X�g�eԝ>��J� S��Gb5�Z�F�
J�b�c`�wL�F��!/=�O"��$j�PR��
|��R�����4TU��]���^V��@�V�[�WB�ǘ��=�U��0�8�Y^)uk�T�	Z
쵄D:�lY����>q�\|��}p<Y�������^���R�BQ�]�{��`5qW�(�E�s�a6�2��}��bև�,V'�cb9�#�c-�c&�ª�%�>eڜ�6B�ob��޺5o�g�
yF�(�dg���7f
�\�;�j5
j�\��ٿ9�k�ߓ��;,�l����(�jN�P����Y��U�M�@o"r�����l��¦`)�qF�[.�?4rjOxBjp�
s��"Yq�a�{��K�u���K� vsƝ1��4��x�f�RjSy&܆��aszz�O����z�P��K��|ΝYy$�<|:T�`woޣ�J�1;�gẂ�PV��g��j�L*���>\:{�+�^1ZI�E0���B<l�%Y�~����0�µ�v]$ΐ�MG �F�j�sloi��
�2��v�ޒ..ls�F����C�Ӿ
�R�Y�v�7�r�1�R����W���`��-��铻��n�R���6���lR͎t�v�ځ/0@��B>�צ�ޓ���g��������a]�D#/I��8�ޒ�I��ȣ�t/�"�2�S�r.�E�����o�������p٭::0�Nq��.	���St���An{�
G��U�a�������%��G��zȸ�)�'��
��0A������>p鯖��s�������9��ͽ���y�N0D��>��|
u������1���B*��1
2�r
�
|V���A����ŦM����4Ȫ�F���9>��cĸ��"_�e.��/��F���:�X˺.��%��͎����~��e��8͞Z�Z��?ov�e��"k��"WW�Z{��cw���B2ȫff��|�h����޽	,ļ|Pզ�v�%d�6^�S����~fFQ
�(���ٯ�k\�I�7��MD�5���&*~
��r�pHև@��\�=�����]@-��EQ�GW���w�8�+���Š�X��~�(Pz��M�
�h8��l���_�M�+A���ek�
�#V�,4�n��Ot����~�S-H>������P�}��
X��e�N���г��ˢ�2N^�S�f�f�st�9���7#�h�|�Dk5�8v�^��7i$�*�R�Q�t�s��"�V�Mb�~�������rCS_�%Ip�&� �r��Z��RW�F��r�"kS���P���LK����'��DK4ڛȂ��"d͗7������P�Y�Vm��������[�p�ҌF�6�
�;�x�i��|E�E�O�k���H��+h�;�(��q�@�;��o�-�WM��s!rJ?R�2��K��m��;�����T�
Dh�88�Y�s����N��dz���L���.8��9�����DE���"[2F��*DZ"�b������%'��)Hc&o�@]r��*�E�9��,l��/�A/;4c[L���07�G�3��Ϟ��46SIA�s0�6F��#��<���h<>4�<�������
>S�߱0���?�0<,�d@��V(Т�gCc!Ayy�RE�C��ƙ�F��6c�Fo{nFj,&AI�8h��aI�Qa��m�K{8|d��L�,�/��%M�B����"�M�2��8�eO�������R/���[$&TC�C8��q�T�N����UGw�����Wo�?����W/��Z'<��[�%=�H��\S�.Ww5��^O������t`�Iod�b��c��c�^'�d�6a� ݾ�eW�J
{0��dۊ]���Ygc���eD�����Ti�{N5�6�j���|���sk�K���k�lo��nif�ikW
@~�`�"n3~n�nKjq�,�z�t�q\��/~kq#%�SDU~�=�C!����Æ	&��=�s<�)r`S�v
��XX���ħH2;�;z�3��q�����m:vц#���������(c$<�_n�K�쳌��,ř��x����1I����.g!S&���[-.�i��/.��k������W�bk��'��`�!␟#���H�ϓ;�o�1M����]Y��8���z�a�R���3��s��C��M����d����'e�|o.����5��oƴ?ed��¶�}������������!���;@�u2@9�3}/a�۟W�����Y��"0>%h~�:3s��P���敬��7r�����Y選�S��N'�R)�;Z�M�@�����D����N�ɮ8�_�I]'%_���+�C'��3,��gM:�~�����G�#���b5��܎c{���+ִ9_8`ܺxN������ŧ�}4G�/5@���?(��s^wj�w�H�@������6S����8���5��X���^���?`����{K�CzU�;����� ��,˚�K� ��t'~���&��~�?ߚ;߄�T׿|G:�"��~�m��_�`inɨx�_�G���"2�W��őF����MZC3ޯ��Gb�����8_'
�1��`��<�ԯ�3��T
l���S���Z"�ࣧr}�-<��e���x���ܝ��oe-+wp������$���SOC6fO��!UO1!2����Z���7�$A�*C��CT)3�":{�_�#��V��G�(o	�����yG*Z�
(w`P�>rq�����J	����a(���|>*o��d��5A@�Rv;{:g���,�,�xK<2 gi7	0�Qr9fQ(KZY!*]�������d6, 7!�1(KR	*BJx>|a
?gv@{(Myh^+���pK�����x���I�m�k��Dj��srU%POuPs��g.Ybj;flqC2Cqf$ED~;6Q((RM&D?d
00`<
W*,#g@8<m;ge�m�[�W��*n�����O�������	'1a
"��p���n��~i#`J��0r(�|zt`/*|P2v�|���7�t�Mi�:aZ!Az������)5O����Qk2�@DS\in�3�6~O���M���~&k�LQC����R�u�|��P�r~z�F����ti�]h(������s�"�/F'
[",�qR��%e�=rL�dmOSH�LW��G���Xx!^K���*�%{�b�J������I��R
qL$�k��Cd���m��=a]'�lY���=8c)ij-r7Q���G
%s*
IRse�!�����q��I%�������^��h�Z��h^�Y�� c:ZLr~ivcKwaGo<}eLIb(*Baj<b^r�\Ci(M���(r���-DO&9���6!@kU)mYk����ZY���w��I�P� Dc\��@Z�V����<b]�g [#1BZ�K^5z!>PA#WU����o8x +G4�|Tf)[Y�/95w(+m)jFX��S���%�v�HFp�"t�8���G_TPy",Y]T#W� ���"�?��1?��g�� ����HYo+�� �!7�0	Xd��H�!;g���{�7��t0%R'`o 7��^C�����������\gbH^KV�tb_��3vxww7bCK|Z[wa 
mJv��RW�gr$��ohTnZ���'�S� @$[�����nM�������M��M>�@0#HE_/pkU9@�{��������b!*k������RG*Z�
(w`P�>rq��]/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/lib.rs� �Yw�<��T3#�e�	,*67H<(9O.:C+

3�p�k��^��]
�_/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/serde.rs� �7
bf�=�l2�Mj=�
5#_" ; ,E
?9,E
9*,E
9*Xq~�{��j�����@]/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/log.rs� �z���q�%�5����&�
J#_B2DV%3


 
#
 
#
E���=���gi��c/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/bit_depth.rs� ��B]�P*z<�;��W�'�#_33;C(-739HX7
8
)3/2&-3!4"	4!<(,/.
58:,(
*'  
H CTR:7<?.-(++8
E
V.`2,'>'*7::8
,(D3E-!>����ޑ��c8PKd�k/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/bytestream/reader.rs� O�Fvې�K=��-��y�#_-)-@S@A@SU%K*9C$'146"41
&+$ .BE&LZ,0:=(P) 9@-+;-.08 #,C4,3<-7%!=%#,0=, $/4'<5B%GJ&#
9<%N^.82&#
BC%R?0IU'C`.H$3#
@%C4>0IA+AK.H$3
S0>^E/&&D 
>-4BL$#? R%O$@
 J6"S,
9N2X&96#IIPN2X&96#MM,U{H&X{H&U�2%X�2%
dI?39CB2)%GB
3@2!?4$#
���q-4}�0�[Дmk/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/bytestream/writer.rs� ��;�r&cf�f��L��X�#_*+$5/;0X,
_I4WBB=IIJ%<
'H88
80"5E.8:04),=%072043K3$ #
9H3+C 
-06 #4A-'=+=,JK&$F'0"2!1#)*:4C(:9<%Nd.8,&#
-;6"!S!
Y<O$/8EH*/<;8+><_+4AD&+874V|R+Y|R+Vvq6,Yvo6,
aG��pߥ���@eټ�d/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/colorspace.rs� Hlze��[k<mS�R
6��~#_=#2&-	 

(
&
	 
"

!�7	�7BQ2NQ
,K/1;chfA:)*))
.15) %)/=C
(*4�%C����3<��TX�i/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/options/decoder.rs� ��$����w��AK-?p���#_)"#+,,,)))))))**)(-)$---**)(2
"1#---**#"#52'E(3(J(LW($N#(@(B(?(@(I(@(=(1(';.-'3-'DB(+ ($%";.!@6C.D&E%*"I"K*#:F\')":-;@1C:2A,0)/5 1#?0. ; 
@1/ ="
>"AE6G4H9 *
B
CL0 :7*0
D>EEW@ C"
P83<)7D0
8+5>4?$
36#3>*
C63D0
@)<)E�@4
J18-E;6'C;H.
536</D$
K.'@OfCO*
*>H,<"%I
A
C$6!E;G
*'?%I
A
C$6!E;G
*&E&J
A
C$8!E;I
*%C$H
A
C$5!E;F
*&H%I
A
C$6!E;G
*%I
(
7A
*E;6'C;H.
"-%%!%3+
镆�����*Df�)�i/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/options/encoder.rs� ���K��꨷�ac���1�#_ ##'D#@#F".'"**1
$
!+ M!
=-:($=0AD#<GM,B7+.7
/9
.:
/'F)8.
3F&
E'<$
6
?20FHM-=/
I[31)MZ
:+X'@)RF0
�C|�,mYc:z_� Ê`/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/result.rs� ��^e�餯����lY�6�H#_ 'FB/4A&5>&)4
GB/4A'5@'+5
9��2�:wQ�8�%	�]�d/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/bytestream.rs� �����ʑyr���t�#_37"< ����Ɛ�i���zA�k/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/bytestream/traits.rs� A�-=
����Bp�~�����#_2<= TWX^$7-583!1$$2 ?3;3= 6@! 6@!!6@!16@!
06@!
)6!@!!WN%��p�n�	�<��:�a/home/palash/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zune-core-0.4.12/src/options.rs� Q{1q3x����
L��
 ;-WO!!
Y�����l��V���ϭmO���������������}�b��c�x86_64-unknown-linux-gnu��[|���=|�n�Y	zune_core�-757da2fe39e7dcf1���9>��c����9
�߼	������+WW������	���������������������������������������������������W����������
���������������B�����
�rust-end-file