it seems the `finalize()` will consume the hasher: > Retrieve result and consume hasher instance. https://docs.rs/md-5/latest/md5/trait.Digest.html#tymethod.finalize how ever it doesn't reset the state. how to reuse and write more data into the hasher after finalized()?