pub fn run_shared_session<A>(session: SharedSession<A>) -> SharedChannel<A> where
    A: SharedProtocol