pub(crate) fn consumer<A: Protocol>(
) -> Session<ReceiveChannel<Rec<SendValue<u64, Z>>, A>>