class BinanceBalance {

  private final Currency currency;
  private final BigDecimal free;
  private final BigDecimal locked;

  public BinanceBalance(
      @JsonProperty("asset") String asset,
      @JsonProperty("free") BigDecimal free,
      @JsonProperty("locked") BigDecimal locked) {
    this.currency = Currency.getInstance(asset);
    this.locked = locked;
    this.free = free;
  }

  public Currency getCurrency() {
    return currency;
  }

  public BigDecimal getTotal() {
    return free.add(locked);
  }

  public BigDecimal getAvailable() {
    return free;
  }

  public BigDecimal getLocked() {
    return locked;
  }

  public String toString() {<FILL_FUNCTION_BODY>}
}

    return "[" + currency + ", free=" + free + ", locked=" + locked + "]";
  
<no_super_class>