func walletBalanceHandler(gateway *daemon.Gateway) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { saddr := r.FormValue("addr") predicted := r.FormValue("predicted") var m interface{} if saddr == "" { m = gateway.GetTotalBalance(predicted != "") } else { addr, err := coin.DecodeBase58Address(saddr) if err != nil { Error400(w, "Invalid address") return } m = gateway.GetBalance(addr, predicted != "") } SendOr404(w, m) } }