Entry<Locale, Properties>[] entries = iso3166.toArray(new Entry[0]);
String[] codes = entries[0].getValue().stringPropertyNames().toArray(new String[0]);
for (String code : codes) {
if (logger.isDebugEnabled()) logger.debug("Creating country [" + code + "]");
try {
Country country = new Country();
country.setIsoCodeAlpha(code);
country.setCountry(new I18nText());
for (int index = 0; index < entries.length; index++)
country.getCountry().add(entries[index].getKey(), entries[index].getValue().getProperty(code));
country.setDefaultCountry(code.equals(defaultCountry));
dao.create(country, false);
if (count++ % 25 == 0) {
dao.flush();
dao.clear();
}