async fn do_handshake<S>( our_id: PeerId, stream: &mut S, ) -> Result<PeerId, Error>where S: AsyncRead + AsyncWrite + Unpin,