﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/en_AU.xml
// *
// ***************************************************************************
en_AU{
    %%Parent{"en_GB"}
    Version{"2.1.10.42"}
    units{
        mass{
            metric-ton{
                dnam{"tonnes"}
                one{"tonne"}
                other{"{0} tonnes"}
            }
        }
    }
    unitsNarrow{
        duration{
            millisecond{
                one{"{0} ms"}
                other{"{0} ms"}
            }
        }
    }
    unitsShort{
        length{
            micrometer{
                dnam{"µmetres"}
            }
        }
    }
}
