// ***************************************************************************
// *
// *   Copyright (C) 1997-2004, International Business Machines
// *   Corporation and others.  All Rights Reserved.
// *
// ***************************************************************************

ko_KR {
    Version { "2.0" }
    NumberPatterns { 
        "#,##0.###;-#,##0.###",
        "\u00A4#,##0.00;-\u00A4#,##0.00",
        "#,##0%",
        "#E0",
    }
//    Countries {
        //KR { "\uB300\uD55C\uBBFC\uAD6D" }
        //KP { "\uC870\uC120 \uBBFC\uC8FC\uC8FC\uC758 \uC778\uBBFC \uACF5\uD654\uAD6D" }
        //US { "\uBBF8\uAD6D" }
        //JP { "\uC77C\uBCF8" }
        //GB { "\uC601\uAD6D" }
        //DE { "\uB3C5\uC77C" }
        //FR { "\uD504\uB791\uC2A4" }
        //CA { "\uCE90\uB098\uB2E4" }
//    }

//    Languages {
//         ko { "\uD55C\uAD6D\uC5B4" }
//    }

    calendar{
        gregorian{
            DateTimePatterns{
                "a hh'\uC2DC' mm'\uBD84' ss'\uCD08' z",
                "a hh'\uC2DC' mm'\uBD84' ss'\uCD08'",
                "a h:mm:ss",
                "a h:mm",
                "yyyy'\uB144' M'\uC6D4' d'\uC77C' EEEE",
                "yyyy'\uB144' M'\uC6D4' d'\uC77C'",
                "yyyy. MM. dd",
                "yy. MM. dd",
                "{1} {0}",
            }
        }
    }
}
