<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Locale SYSTEM 'locale.dtd'>
<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->
<Locale versionDTD="2.0.3" allowUpdateFromCLDR="no" version="1.2">
<LC_INFO>
<Language>
<LangID>es</LangID>
<DefaultName>Spanish</DefaultName>
</Language>
<Country>
<CountryID>PY</CountryID>
<DefaultName>Paraguay</DefaultName>
</Country>
<Platform>
<PlatformID>generic</PlatformID>
</Platform>
</LC_INFO>
<LC_CTYPE ref="es_PE"/>
<LC_FORMAT ref="es_AR" replaceTo="[$G-3C0A]"/>
<LC_COLLATION ref="en_US"/>
<LC_SEARCH ref="en_US"/>
<LC_INDEX ref="es_ES"/>
<LC_CALENDAR ref="es_AR"/>
<LC_CURRENCY>
<Currency default="true" usedInCompatibleFormatCodes="true">
<CurrencyID>PYG</CurrencyID>
<CurrencySymbol>G</CurrencySymbol>
<BankSymbol>PYG</BankSymbol>
<CurrencyName>Guarani</CurrencyName>
<DecimalPlaces>2</DecimalPlaces>
</Currency>
</LC_CURRENCY>
<LC_TRANSLITERATION ref="en_US"/>
<LC_MISC ref="es_ES"/>
<LC_NumberingLevel ref="en_US"/>
<LC_OutLineNumberingLevel ref="en_US"/>
</Locale>
