class BrazilianToponymMapLoader {
  private final String toponymFilepath = "pt/brazilian_municipalities";
  private final List<String> states = Arrays.asList(
    "AC", // Acre
    "AL", // Alagoas
    "AP", // Amapá
    "AM", // Amazonas
    "BA", // Bahia
    "CE", // Ceará
    "DF", // Distrito Federal
    "ES", // Espírito Santo
    "GO", // Goiás
    "MA", // Maranhão
    "MT", // Mato Grosso
    "MS", // Mato Grosso do Sul
    "MG", // Minas Gerais
    "PA", // Pará
    "PB", // Paraíba
    "PR", // Paraná
    "PE", // Pernambuco
    "PI", // Piauí
    "RJ", // Rio de Janeiro
    "RN", // Rio Grande do Norte
    "RS", // Rio Grande do Sul
    "RO", // Rondônia
    "RR", // Roraima
    "SC", // Santa Catarina
    "SP", // São Paulo
    "SE", // Sergipe
    "TO"  // Tocantins
  );

  BrazilianToponymMapLoader() {
  }

  private List<String> getToponymsFromState(String state) {<FILL_FUNCTION_BODY>}

  public Map<String, List<String>> buildMap() {
    Map<String, List<String>> map = new HashMap<>();
    for (String state : states) {
      map.put(state, getToponymsFromState(state));
    }
    return map;
  }
}

    List<String> toponyms = getDataBroker().getFromResourceDirAsLines(toponymFilepath + "/" + state + ".tsv");
    return toponyms.stream()
      .map(toponym -> toponym.replace('-', ' ').toLowerCase())
      .collect(Collectors.toList());
  
<no_super_class>