a :jg]ã@s’ddlmZddlZddlmZmZddlmZdddœd d „Z Gd d „d ejƒZ Gd d„dej ƒZ e  e je e ¡e de ¡e e jd¡dS)é)Ú annotationsNé)ÚImageÚ ImageFile)Úi32beÚbytesÚbool)ÚprefixÚreturncCs|dd…dkS)Nésqoif©)r r r ú[sÿz$QoiDecoder.decode..)éÿÿÿÿr)Úfdr(r3Ú bytearrayrZ getmodebandsÚmodeÚstateZxsizeZysizeÚlenrr'ÚgetÚtupleÚ enumerateZ set_as_raw) rr4ÚdataZbandsZ dest_lengthÚbyter)ÚopZop_indexZ second_byteZdiff_redZ diff_blueZ run_lengthr rDr Údecode2sl "ÿÿÿúÿ    þÿ         zQoiDecoder.decode) r!r"r#Z _pulls_fdr'Ú__annotations__r(r3rRr r r r r&&s   r&rz.qoi)Ú __future__rrÚrrÚ_binaryrrrrZ PyDecoderr&Z register_openr$Zregister_decoderZregister_extensionr r r r Ús  K