public override async Task<Profile> RequestProfile(string name) { uint accountIndex = ProfileNameToIndex(name); var keyPath = new KeyPath(DerivationPath).Derive(accountIndex); byte[] derivationData = keyPath.ToBytes(); var output = await SendRequestAsync(EthGetAddress.Request(derivationData)); if(IsSuccess(output.StatusCode)) { var address = new HoardID(EthGetAddress.GetAddress(output.Data)); return new HDWalletProfile(name, address, derivationData, this); } throw new Exception("HD wallet returned error: " + output.StatusCode); }