zlib written in rust