public static String FooBar(this IFoo foo)
 {
     // this is one way to call async from sync code
     return(foo.FooBarAsync(CancellationToken.None).GetAwaiter().GetResult());
 }