/// <summary>
 /// Create a new instance of the <see cref="T:Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.RetryPolicy" /> class with the specified retry policy.
 /// </summary>
 /// <param name="retryPolicy">The retry strategy.</param>
 /// <param name="isTransient">The predicate function to detect whether the specified exception is transient.</param>
 /// <returns>A new instance of the <see cref="T:Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.RetryPolicy" /> class.</returns>
 public static RetryPolicy Catch(this RetryPolicy retryPolicy, Func <Exception, bool>?isTransient = null) =>
 Catch <Exception>(retryPolicy.NotNull(), isTransient);