pub fn accept_shared_session<F>(
    cont: impl Future<Output = PartialSession<(Lock<F>, ()), <F as SharedRecApp<SharedToLinear<LinearToShared<F>>>>::Applied>> + Send + 'static
) -> SharedSession<LinearToShared<F>> where
    F: Protocol + SharedRecApp<SharedToLinear<LinearToShared<F>>>,
    <F as SharedRecApp<SharedToLinear<LinearToShared<F>>>>::Applied: Protocol