pub fn evaluate_policies<CTX: Send + Sync + Clone + 'static, Client: FHIRClient<CTX, OperationOutcomeError> + Send + Sync + 'static>(
context: PolicyContext<CTX, Client>,
policies: &Vec<Arc<AccessPolicyV2>>,
) -> impl Future<Output = Result<PolicyContext<CTX, Client>, OperationOutcomeError>>