pub fn new_duplex_connection_with_limit<T: DeserializeOwned + Serialize + Unpin, R: AsyncRead + Unpin, W: AsyncWrite + Unpin>(
    size_limit: u64,
    checksums_enabled: bool,
    raw_read: R,
    raw_write: W
) -> (AsyncReadConverse<R, W, T>, AsyncWriteConverse<W, T>)