﻿// ***************************************************************************
// *
// * Copyright (C) 2010 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/rbnf/pl.xml
// *
// ***************************************************************************
/**
 *  ICU <specials> source: <path>/xml/rbnf/pl.xml
 */
pl{
    RBNFRules{
        SpelloutRules{
            "%spellout-numbering-year:",
            "x.x: =#,###0.#=;",
            "0: =%spellout-numbering=;",
            "%spellout-numbering:",
            "0: =%spellout-cardinal-masculine=;",
            "%spellout-cardinal-masculine:",
            "-x: minus >>;",
            "x.x: << przecinek >>;",
            "0: zero;",
            "1: jeden;",
            "2: dwa;",
            "3: trzy;",
            "4: cztery;",
            "5: pi\u0119\u0107;",
            "6: sze\u015B\u0107;",
            "7: siedem;",
            "8: osiem;",
            "9: dziewi\u0119\u0107;",
            "10: dziesi\u0119\u0107;",
            "11: jedena\u015Bcie;",
            "12: dwana\u015Bcie;",
            "13: trzyna\u015Bcie;",
            "14: czterna\u015Bcie;",
            "15: pi\u0119tna\u015Bcie;",
            "16: szesna\u015Bcie;",
            "17: siedemna\u015Bcie;",
            "18: osiemna\u015Bcie;",
            "19: dziewi\u0119tna\u015Bcie;",
            "20: dwadzie\u015Bcia[ >>];",
            "30: trzydzie\u015Bci[ >>];",
            "40: czterdzie\u015Bci[ >>];",
            "50: <<dziesi\u0105t[ >>];",
            "100: sto[ >>];",
            "200: <%spellout-cardinal-feminine<\u015Bcie[ >>];",
            "300: <%spellout-cardinal-feminine<sta[ >>];",
            "500: <%spellout-cardinal-feminine<set[ >>];",
            "1000: <%spellout-cardinal-feminine< tysi\u0105c[ >>];",
            "2000: <%spellout-cardinal-feminine< tysi\u0105ce[ >>];",
            "5000: <%spellout-cardinal-feminine< tysi\u0119cy[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "2000000: <%spellout-cardinal-masculine< miliony[ >>];",
            "5000000: <%spellout-cardinal-masculine< milion\u00F3w[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "2000000000: <%spellout-cardinal-masculine< miliardy[ >>];",
            "5000000000: <%spellout-cardinal-masculine< miliard\u00F3w[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "2000000000000: <%spellout-cardinal-masculine< biliony[ >>];",
            "5000000000000: <%spellout-cardinal-masculine< bilion\u00F3w[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "2000000000000000: <%spellout-cardinal-masculine< biliardy[ >>];",
            "5000000000000000: <%spellout-cardinal-masculine< biliard\u00F3w[ >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-cardinal-neutre:",
            "-x: minus >>;",
            "x.x: << przecinek >>;",
            "0: zero;",
            "1: jedno;",
            "2: =%spellout-cardinal-masculine=;",
            "20: dwadzie\u015Bcia[ >>];",
            "30: trzydzie\u015Bci[ >>];",
            "40: czterdzie\u015Bci[ >>];",
            "50: <<dziesi\u0105t[ >>];",
            "100: sto[ >>];",
            "200: <%spellout-cardinal-feminine<\u015Bcie[ >>];",
            "300: <%spellout-cardinal-feminine<sta[ >>];",
            "500: <%spellout-cardinal-feminine<set[ >>];",
            "1000: <%spellout-cardinal-feminine< tysi\u0105c[ >>];",
            "2000: <%spellout-cardinal-feminine< tysi\u0105ce[ >>];",
            "5000: <%spellout-cardinal-feminine< tysi\u0119cy[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "2000000: <%spellout-cardinal-masculine< miliony[ >>];",
            "5000000: <%spellout-cardinal-masculine< milion\u00F3w[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "2000000000: <%spellout-cardinal-masculine< miliardy[ >>];",
            "5000000000: <%spellout-cardinal-masculine< miliard\u00F3w[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "2000000000000: <%spellout-cardinal-masculine< biliony[ >>];",
            "5000000000000: <%spellout-cardinal-masculine< bilion\u00F3w[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "2000000000000000: <%spellout-cardinal-masculine< biliardy[ >>];",
            "5000000000000000: <%spellout-cardinal-masculine< biliard\u00F3w[ >>];",
            "1000000000000000000: =#,##0=;",
            "%spellout-cardinal-feminine:",
            "-x: minus >>;",
            "x.x: << przecinek >>;",
            "0: zero;",
            "1: jedna;",
            "2: dwie;",
            "3: =%spellout-cardinal-masculine=;",
            "20: dwadzie\u015Bcia[ >>];",
            "30: trzydzie\u015Bci[ >>];",
            "40: czterdzie\u015Bci[ >>];",
            "50: <<dziesi\u0105t[ >>];",
            "100: sto[ >>];",
            "200: <%spellout-cardinal-feminine<\u015Bcie[ >>];",
            "300: <%spellout-cardinal-feminine<sta[ >>];",
            "500: <%spellout-cardinal-feminine<set[ >>];",
            "1000: <%spellout-cardinal-feminine< tysi\u0105c[ >>];",
            "2000: <%spellout-cardinal-feminine< tysi\u0105ce[ >>];",
            "5000: <%spellout-cardinal-feminine< tysi\u0119cy[ >>];",
            "1000000: <%spellout-cardinal-masculine< milion[ >>];",
            "2000000: <%spellout-cardinal-masculine< miliony[ >>];",
            "5000000: <%spellout-cardinal-masculine< milion\u00F3w[ >>];",
            "1000000000: <%spellout-cardinal-masculine< miliard[ >>];",
            "2000000000: <%spellout-cardinal-masculine< miliardy[ >>];",
            "5000000000: <%spellout-cardinal-masculine< miliard\u00F3w[ >>];",
            "1000000000000: <%spellout-cardinal-masculine< bilion[ >>];",
            "2000000000000: <%spellout-cardinal-masculine< biliony[ >>];",
            "5000000000000: <%spellout-cardinal-masculine< bilion\u00F3w[ >>];",
            "1000000000000000: <%spellout-cardinal-masculine< biliard[ >>];",
            "2000000000000000: <%spellout-cardinal-masculine< biliardy[ >>];",
            "5000000000000000: <%spellout-cardinal-masculine< biliard\u00F3w[ >>];",
            "1000000000000000000: =#,##0=;",
        }
    }
    Version{"2.0.41.26"}
}
