/// <summary>
 /// Returns a JSON array with all wallet accounts.
 /// </summary>
 /// <param name="enc_pubkey">HEXASTRING (optional). If provided, return only accounts of this public key</param>
 /// <param name="b58_pubkey">String (optional). If provided, return only accounts of this public key. Note: If use enc_pubkey and b58_pubkey together and is not the same public key, will return an error</param>
 /// <param name="start">Integer (optional, default = 0). If provided, will return wallet accounts starting at this position (index starts at position 0)</param>
 /// <param name="max">Integer (optional, default = 100). If provided, will return max accounts. If not provided, max=100 by default</param>
 /// <returns>Each JSON array item contains an Account Object</returns>
 public static Task <Account[]> GetWalletAccountsAsync(this IPascalCoinClient client, string enc_pubkey = null, string b58_pubkey = null, int?start = null, int?max = null)
 {
     return(Task.Run(() => client.GetWalletAccounts(enc_pubkey, b58_pubkey, start, max)));
 }