code: @FromString
      public static CurrencyUnit of(String currencyCode) {
          MoneyUtils.checkNotNull(currencyCode, "Currency code must not be null");
          CurrencyUnit currency = currenciesByCode.get(currencyCode);
          if (currency == null) {
              throw new IllegalCurrencyException("Unknown currency '" + currencyCode + '\'');
          }
          return currency;
      }
docs: Obtains an instance of {@code CurrencyUnit} for the specified three letter currency code.
  <p>
  A currency is uniquely identified by a three letter code, based on ISO-4217.
  Valid currency codes are three upper-case ASCII letters.
  
  @param currencyCode  the three-letter currency code, not null
  @return the singleton instance, never null
  @throws IllegalCurrencyException if the currency is unknown