﻿// ***************************************************************************
// *
// * Copyright (C) 2009 International Business Machines
// * Corporation and others.  All Rights Reserved.
// * Tool: com.ibm.icu.dev.tool.cldr.LDML2ICUConverter.java
// * Source File:<path>/common/main/en_NZ.xml
// *
// ***************************************************************************
en_NZ{
    Currencies{
        NZD{
            "$",
            "New Zealand Dollar",
        }
        USD{
            "US$",
            "US Dollar",
        }
    }
    NumberPatterns{
        "#,##0.###",
        "¤#,##0.00",
        "#,##0%",
        "#E0",
    }
    Version{"1.59"}
    calendar{
        gregorian{
            DateTimeElements:intvector{
                1,
                4,
            }
            DateTimePatterns{
                "h:mm:ss a zzzz",
                "h:mm:ss a z",
                "h:mm:ss a",
                "h:mm a",
                "EEEE, d MMMM y",
                "d MMMM y",
                "d/MM/yyyy",
                "d/MM/yy",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
                "{1} {0}",
            }
            availableFormats{
                MMMMd{"d MMMM"}
                Md{"d/M"}
                yyyyMM{"MM/yyyy"}
                yyyyMMMM{"MMMM y"}
            }
            intervalFormats{
                M{
                    M{"M-M"}
                }
                MEd{
                    M{"E, d/MM - E, d/MM"}
                    d{"E, d/MM - E, d/MM"}
                }
                MMM{
                    M{"MMM-MMM"}
                }
                MMMEd{
                    M{"E, d MMM - E, d MMM"}
                    d{"E, d - E, d MMM"}
                }
                MMMd{
                    M{"d MMM - d MMM"}
                    d{"d-d MMM"}
                }
                Md{
                    M{"d/MM - d/MM"}
                    d{"d/MM - d/MM"}
                }
                d{
                    d{"d-d"}
                }
                fallback{"{0} - {1}"}
                h{
                    a{"h a - h a"}
                    h{"h-h a"}
                }
                hm{
                    a{"h:mm a - h:mm a"}
                    h{"h:mm-h:mm a"}
                    m{"h:mm-h:mm a"}
                }
                hmv{
                    a{"h:mm a - h:mm a v"}
                    h{"h:mm-h:mm a v"}
                    m{"h:mm-h:mm a v"}
                }
                hv{
                    a{"h a - h a v"}
                    h{"h-h a v"}
                }
                y{
                    y{"y-y"}
                }
                yM{
                    M{"MM/yy - MM/yy"}
                    y{"MM/yy - MM/yy"}
                }
                yMEd{
                    M{"E, d/MM/yy - E, d/MM/yy"}
                    d{"E, d/MM/yy - E, d/MM/yy"}
                    y{"E, d/MM/yy - E, d/MM/yy"}
                }
                yMMM{
                    M{"MMM-MMM y"}
                    y{"MMM y - MMM y"}
                }
                yMMMEd{
                    M{"E, d MMM - E, d MMM y"}
                    d{"E, d - E, d MMM y"}
                    y{"E, d MMM y - E, d MMM y"}
                }
                yMMMd{
                    M{"d MMM - d MMM y"}
                    d{"d-d MMM y"}
                    y{"d MMM y - d MMM y"}
                }
                yMd{
                    M{"d/MM/yy - d/MM/yy"}
                    d{"d/MM/yy - d/MM/yy"}
                    y{"d/MM/yy - d/MM/yy"}
                }
            }
        }
    }
    zoneStrings{
        "meta:Australia_Central"{
            cu:int{1}
        }
        "meta:Australia_CentralWestern"{
            cu:int{1}
        }
        "meta:Australia_Eastern"{
            cu:int{1}
        }
        "meta:Australia_Western"{
            cu:int{1}
        }
        "meta:New_Zealand"{
            cu:int{1}
        }
    }
}
