﻿// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html#License
/**
 * ICU <specials> source: <path>/xml/rbnf/en.xml
 */
en{
    RBNFRules{
        DurationRules{
            "%with-words:",
            "0: 0 seconds; 1 second; =0= seconds;",
            "60/60: <%%min<[, >>];",
            "3600/60: <%%hr<[, >>>];",
            "%%min:",
            "0: 0 minutes; 1 minute; =0= minutes;",
            "%%hr:",
            "0: 0 hours; 1 hour; =0= hours;",
            "%in-numerals:",
            "0: =0= sec.;",
            "60: =%%min-sec=;",
            "3600: =%%hr-min-sec=;",
            "%%min-sec:",
            "0: :=00=;",
            "60/60: <0<>>;",
            "%%hr-min-sec:",
            "0: :=00=;",
            "60/60: <00<>>;",
            "3600/60: <#,##0<:>>>;",
            "%duration:",
            "0: =%in-numerals=;",
            "%%lenient-parse:",
            "& ':' = '.' = ' ' = '-';",
        }
        OrdinalRules{
            "%digits-ordinal:",
            "-x: \u2212>>;",
            "0: =#,##0=$(ordinal,one{st}two{nd}few{rd}other{th})$;",
        }
        SpelloutRules{
            "%%lenient-parse:",
            "&[last primary ignorable ] << ' ' << ',' << '-' << '\u00AD';",
            "%%2d-year:",
            "0: hundred;",
            "1: oh-=%spellout-numbering=;",
            "10: =%spellout-numbering=;",
            "%spellout-numbering-year:",
            "-x: minus >>;",
            "x.x: =#,##0.#=;",
            "0: =%spellout-numbering=;",
            "1010/100: << >%%2d-year>;",
            "1100/100: << >%%2d-year>;",
            "2000: =%spellout-numbering=;",
            "2010/100: << >%%2d-year>;",
            "2100/100: << >%%2d-year>;",
            "3000: =%spellout-numbering=;",
            "3010/100: << >%%2d-year>;",
            "3100/100: << >%%2d-year>;",
            "4000: =%spellout-numbering=;",
            "4010/100: << >%%2d-year>;",
            "4100/100: << >%%2d-year>;",
            "5000: =%spellout-numbering=;",
            "5010/100: << >%%2d-year>;",
            "5100/100: << >%%2d-year>;",
            "6000: =%spellout-numbering=;",
            "6010/100: << >%%2d-year>;",
            "6100/100: << >%%2d-year>;",
            "7000: =%spellout-numbering=;",
            "7010/100: << >%%2d-year>;",
            "7100/100: << >%%2d-year>;",
            "8000: =%spellout-numbering=;",
            "8010/100: << >%%2d-year>;",
            "8100/100: << >%%2d-year>;",
            "9000: =%spellout-numbering=;",
            "9010/100: << >%%2d-year>;",
            "9100/100: << >%%2d-year>;",
            "10000: =%spellout-numbering=;",
            "%spellout-numbering:",
            "-x: minus >>;",
            "Inf: infinity;",
            "NaN: not a number;",
            "0: =%spellout-cardinal=;",
            "%spellout-numbering-verbose:",
            "-x: minus >>;",
            "Inf: infinity;",
            "NaN: not a number;",
            "0: =%spellout-cardinal-verbose=;",
            "%spellout-cardinal:",
            "-x: minus >>;",
            "x.x: << point >>;",
            "Inf: infinite;",
            "NaN: not a number;",
            "0: zero;",
            "1: one;",
            "2: two;",
            "3: three;",
            "4: four;",
            "5: five;",
            "6: six;",
            "7: seven;",
            "8: eight;",
            "9: nine;",
            "10: ten;",
            "11: eleven;",
            "12: twelve;",
            "13: thirteen;",
            "14: fourteen;",
            "15: fifteen;",
            "16: sixteen;",
            "17: seventeen;",
            "18: eighteen;",
            "19: nineteen;",
            "20: twenty[->>];",
            "30: thirty[->>];",
            "40: forty[->>];",
            "50: fifty[->>];",
            "60: sixty[->>];",
            "70: seventy[->>];",
            "80: eighty[->>];",
            "90: ninety[->>];",
            "100: << hundred[ >>];",
            "1000: << thousand[ >>];",
            "1000000: << million[ >>];",
            "1000000000: << billion[ >>];",
            "1000000000000: << trillion[ >>];",
            "1000000000000000: << quadrillion[ >>];",
            "1000000000000000000: =#,##0=;",
            "%%and:",
            "1: ' and =%spellout-cardinal-verbose=;",
            "100: ' =%spellout-cardinal-verbose=;",
            "%%commas:",
            "1: ' and =%spellout-cardinal-verbose=;",
            "100: , =%spellout-cardinal-verbose=;",
            "1000: , <%spellout-cardinal-verbose< thousand[>%%commas>];",
            "1000000: , =%spellout-cardinal-verbose=;",
            "%spellout-cardinal-verbose:",
            "-x: minus >>;",
            "x.x: << point >>;",
            "Inf: infinite;",
            "NaN: not a number;",
            "0: =%spellout-numbering=;",
            "100: << hundred[>%%and>];",
            "1000: << thousand[>%%and>];",
            "100000/1000: << thousand[>%%commas>];",
            "1000000: << million[>%%commas>];",
            "1000000000: << billion[>%%commas>];",
            "1000000000000: << trillion[>%%commas>];",
            "1000000000000000: << quadrillion[>%%commas>];",
            "1000000000000000000: =#,##0=;",
            "%%tieth:",
            "0: tieth;",
            "1: ty-=%spellout-ordinal=;",
            "%%th:",
            "0: th;",
            "1: ' =%spellout-ordinal=;",
            "%spellout-ordinal:",
            "-x: minus >>;",
            "x.x: =#,##0.#=;",
            "Inf: infinitieth;",
            "0: zeroth;",
            "1: first;",
            "2: second;",
            "3: third;",
            "4: fourth;",
            "5: fifth;",
            "6: sixth;",
            "7: seventh;",
            "8: eighth;",
            "9: ninth;",
            "10: tenth;",
            "11: eleventh;",
            "12: twelfth;",
            "13: =%spellout-numbering=th;",
            "20: twen>%%tieth>;",
            "30: thir>%%tieth>;",
            "40: for>%%tieth>;",
            "50: fif>%%tieth>;",
            "60: six>%%tieth>;",
            "70: seven>%%tieth>;",
            "80: eigh>%%tieth>;",
            "90: nine>%%tieth>;",
            "100: <%spellout-numbering< hundred>%%th>;",
            "1000: <%spellout-numbering< thousand>%%th>;",
            "1000000: <%spellout-numbering< million>%%th>;",
            "1000000000: <%spellout-numbering< billion>%%th>;",
            "1000000000000: <%spellout-numbering< trillion>%%th>;",
            "1000000000000000: <%spellout-numbering< quadrillion>%%th>;",
            "1000000000000000000: =#,##0=.;",
            "%%and-o:",
            "0: th;",
            "1: ' and =%spellout-ordinal-verbose=;",
            "100: ' =%spellout-ordinal-verbose=;",
            "%%commas-o:",
            "0: th;",
            "1: ' and =%spellout-ordinal-verbose=;",
            "100: , =%spellout-ordinal-verbose=;",
            "1000: , <%spellout-cardinal-verbose< thousand>%%commas-o>;",
            "1000000: , =%spellout-ordinal-verbose=;",
            "%spellout-ordinal-verbose:",
            "-x: minus >>;",
            "x.x: =#,##0.#=;",
            "Inf: infinitieth;",
            "0: =%spellout-ordinal=;",
            "100: <%spellout-numbering-verbose< hundred>%%and-o>;",
            "1000: <%spellout-numbering-verbose< thousand>%%and-o>;",
            "100000/1000: <%spellout-numbering-verbose< thousand>%%commas-o>;",
            "1000000: <%spellout-numbering-verbose< million>%%commas-o>;",
            "1000000000: <%spellout-numbering-verbose< billion>%%commas-o>;",
            "1000000000000: <%spellout-numbering-verbose< trillion>%%commas-o>;",
            "1000000000000000: <%spellout-numbering-verbose< quadrillion>%%commas-o>;",
            "1000000000000000000: =#,##0=.;",
        }
    }
    Version{"2.1.21.55"}
}
