/// <summary>
 /// Navigates modaly to the given page with an argument that will be available from this page, but also stored with the navigation state.
 /// </summary>
 /// <returns>The async.</returns>
 /// <param name="navigation">The navigation service.</param>
 /// <param name="page">The destination page.</param>
 /// <param name="args">The navigation arguments.</param>
 /// <param name="animated">Indicates whether the navigation should be animated.</param>
 public static Task PushModalAsync(this INavigation navigation, Page page, object args, bool animated)
 {
     page.SetNavigationArgs(args);
     return(navigation.PushModalAsync(page, animated));
 }