Usando o delegado Func com o método Async

Estou tentando usar o Func com o método Async. E estou recebendo um erro.

Não é possível converter expressão lambda assíncrona em tipo de delegação'Func<HttpResponseMesage>'. Uma expressão lambda assíncrona pode retornar nulo, Tarefa ouTask<T>, nenhum dos quais é conversível em'Func<HttpResponseMesage>'.

abaixo está o meu código:

public async Task<HttpResponseMessage> CallAsyncMethod()
{
    Console.WriteLine("Calling Youtube");
    HttpClient client = new HttpClient();
    var response = await client.GetAsync("https://www.youtube.com/watch?v=_OBlgSz8sSM");
    Console.WriteLine("Got Response from youtube");
    return response;
}

static void Main(string[] args)
{
    Program p = new Program();
    Task<HttpResponseMessage> myTask = p.CallAsyncMethod();
    Func<HttpResponseMessage> myFun =async () => await myTask;
    Console.ReadLine();
}

questionAnswers(3)

yourAnswerToTheQuestion