﻿// ***************************************************************************
// *
// * Copyright (C) 2011 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/rbnf/pt_PT.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/rbnf/pt_PT.xml
 */
pt_PT{
    RBNFRules{
        OrdinalRules{
            "%%dord-mascabbrev:",
            "0: \u00BA;",
            "1: er;",
            "2: \u00BA;",
            "3: er;",
            "4: \u00BA;",
            "20: >>;",
            "100: >>;",
            "%digits-ordinal-masculine:",
            "-x: \u2212>>;",
            "0: =#,##0==%%dord-mascabbrev=;",
            "%%dord-femabbrev:",
            "0: \u00AA;",
            "%digits-ordinal-feminine:",
            "-x: \u2212>>;",
            "0: =#,##0==%%dord-femabbrev=;",
            "%digits-ordinal:",
            "0: =%digits-ordinal-masculine=;",
        }
        SpelloutRules{
            "%%lenient-parse:",
            "&[last primary ignorable ] << ' ' << ',' << '-' << '\u00AD';",
            "%spellout-numbering-year:",
            "x.x: =#,###0.#=;",
            "0: =%spellout-numbering=;",
            "%spellout-numbering:",
            "0: =%spellout-cardinal-masculine=;",
            "%spellout-cardinal-masculine:",
            "-x: menos >>;",
            "x.x: << v\u00EDrgula >>;",
            "0: zero;",
            "1: um;",
            "2: dois;",
            "3: tr\u00EAs;",
            "4: quatro;",
            "5: cinco;",
            "6: seis;",
            "7: sete;",
            "8: oito;",
            "9: nove;",
            "10: dez;",
            "11: onze;",
            "12: doze;",
            "13: treze;",
            "14: catorze;",
            "15: quinze;",
            "16: dezasseis;",
            "17: dezassete;",
            "18: dezoito;",
            "19: dezanove;",
            "20: vinte[ e >>];",
            "30: trinta[ e >>];",
            "40: quarenta[ e >>];",
            "50: cinquenta[ e >>];",
            "60: sessenta[ e >>];",
            "70: setenta[ e >>];",
            "80: oitenta[ e >>];",
            "90: noventa[ e >>];",
            "100: cem;",
            "101: cento e >>;",
            "200: duzcentos[ e >>];",
            "300: trezentos[ e >>];",
            "400: quatrocentos[ e >>];",
            "500: quinhentos[ e >>];",
            "600: seiscentos[ e >>];",
            "700: setecentos[ e >>];",
            "800: oitocentos[ e >>];",
            "900: novecentos[ e >>];",
            "1000: mil[ e >>];",
            "2000: <%spellout-cardinal-masculine< mil[ e >>];",
            "1000000: um milh\u00E3o[ e >>];",
            "2000000: <%spellout-cardinal-masculine< milh\u00F5es[ e >>];",
            "1000000000000: um bilh\u00E3o[ e >>];",
            "2000000000000: <%spellout-cardinal-masculine< bilh\u00F5es[ e >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-cardinal-feminine:",
            "-x: menos >>;",
            "x.x: << v\u00EDrgula >>;",
            "0: zero;",
            "1: uma;",
            "2: duas;",
            "3: =%spellout-cardinal-masculine=;",
            "20: vinte[ e >>];",
            "30: trinta[ e >>];",
            "40: quarenta[ e >>];",
            "50: cinquenta[ e >>];",
            "60: sessenta[ e >>];",
            "70: setenta[ e >>];",
            "80: oitenta[ e >>];",
            "90: noventa[ e >>];",
            "100: cem;",
            "101: centa e >>;",
            "200: duzcentas[ e >>];",
            "300: trezentas[ e >>];",
            "400: quatrocentas[ e >>];",
            "500: quinhentas[ e >>];",
            "600: seiscentas[ e >>];",
            "700: setecentas[ e >>];",
            "800: oitocentas[ e >>];",
            "900: novecentas[ e >>];",
            "1000: mil[ e >>];",
            "2000: <%spellout-cardinal-masculine< mil[ e >>];",
            "1000000: um milh\u00E3o[ e >>];",
            "2000000: <%spellout-cardinal-masculine< milh\u00F5es[ e >>];",
            "1000000000000: um bilh\u00E3o[ e >>];",
            "2000000000000: <%spellout-cardinal-masculine< bilh\u00F5es[ e >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-ordinal-masculine:",
            "-x: menos >>;",
            "x.x: =#,##0.#=;",
            "0: zero;",
            "1: primeiro;",
            "2: segundo;",
            "3: terceiro;",
            "4: quarto;",
            "5: quinto;",
            "6: sexto;",
            "7: s\u00E9timo;",
            "8: oitavo;",
            "9: nono;",
            "10: d\u00E9cimo[ >>];",
            "20: vig\u00E9simo[ >>];",
            "30: trig\u00E9simo[ >>];",
            "40: quadrag\u00E9simo[ >>];",
            "50: quinquag\u00E9simo[ >>];",
            "60: sexag\u00E9simo[ >>];",
            "70: septuag\u00E9simo[ >>];",
            "80: octog\u00E9simo[ >>];",
            "90: nonag\u00E9simo[ >>];",
            "100: cent\u00E9simo[ >>];",
            "200: ducent\u00E9simo[ >>];",
            "300: tricent\u00E9simo[ >>];",
            "400: quadringent\u00E9simo[ >>];",
            "500: quingent\u00E9simo[ >>];",
            "600: sexcent\u00E9simo[ >>];",
            "700: septingent\u00E9simo[ >>];",
            "800: octingent\u00E9simo[ >>];",
            "900: noningent\u00E9simo[ >>];",
            "1000: mil\u00E9simo[ >>];",
            "2000: <%spellout-cardinal-masculine<\u00ADmil\u00E9simo[ >>];",
            "1000000: un milion\u00E9simo[ >>];",
            "2000000: <%spellout-cardinal-masculine< milion\u00E9simo[ >>];",
            "1000000000000: un bilion\u00E9simo[ >>];",
            "2000000000000: <%spellout-cardinal-masculine< bilion\u00E9simo[ >>];",
            "1000000000000000000: =#,##0=\u00BA;",
            "%spellout-ordinal-feminine:",
            "-x: menos >>;",
            "x.x: =#,##0.#=;",
            "0: zero;",
            "1: primeira;",
            "2: segunda;",
            "3: terceira;",
            "4: quarta;",
            "5: quinta;",
            "6: sexta;",
            "7: s\u00E9tima;",
            "8: oitava;",
            "9: nona;",
            "10: d\u00E9cima[ >>];",
            "20: vig\u00E9sima[ >>];",
            "30: trig\u00E9sima[ >>];",
            "40: quadrag\u00E9sima[ >>];",
            "50: quinquag\u00E9sima[ >>];",
            "60: sexag\u00E9sima[ >>];",
            "70: septuag\u00E9sima[ >>];",
            "80: octog\u00E9sima[ >>];",
            "90: nonag\u00E9sima[ >>];",
            "100: cent\u00E9sima[ >>];",
            "200: ducent\u00E9sima[ >>];",
            "300: tricent\u00E9sima[ >>];",
            "400: quadringent\u00E9sima[ >>];",
            "500: quingent\u00E9sima[ >>];",
            "600: sexcent\u00E9sima[ >>];",
            "700: septingent\u00E9sima[ >>];",
            "800: octingent\u00E9sima[ >>];",
            "900: noningent\u00E9sima[ >>];",
            "1000: mil\u00E9sima[ >>];",
            "2000: <%spellout-cardinal-masculine<\u00ADmil\u00E9sima[ >>];",
            "1000000: un milion\u00E9sima[ >>];",
            "2000000: <%spellout-cardinal-masculine< milion\u00E9sima[ >>];",
            "1000000000000: un bilh\u00F5\u00E9sima[ >>];",
            "2000000000000: <%spellout-cardinal-masculine< bilion\u00E9sima[ >>];",
            "1000000000000000000: =#,##0=\u00AA;",
        }
    }
    Version{"2.0.58.57"}
}
