﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/es_AR.xml
// *
// ***************************************************************************
es_AR{
    %%Parent{"es_419"}
    Version{"2.1.19.14"}
    units{
        duration{
            year{
                per{"{0}/año"}
            }
        }
        electric{
            ampere{
                dnam{"amperios"}
                one{"{0} amperio"}
                other{"{0} amperios"}
            }
            milliampere{
                dnam{"miliamperios"}
                one{"{0} miliamperio"}
                other{"{0} miliamperios"}
            }
            ohm{
                one{"{0} ohmio"}
                other{"{0} ohmios"}
            }
            volt{
                one{"{0} voltio"}
                other{"{0} voltios"}
            }
        }
        energy{
            joule{
                dnam{"julios"}
                one{"{0} julio"}
                other{"{0} julios"}
            }
            kilojoule{
                dnam{"kilojulios"}
                one{"{0} kilojulio"}
                other{"{0} kilojulios"}
            }
        }
    }
    unitsNarrow{
        duration{
            second{
                dnam{"seg."}
                one{"{0}seg."}
                other{"{0}seg."}
            }
            year{
                other{"{0}a."}
            }
        }
    }
    unitsShort{
        duration{
            century{
                dnam{"s"}
                one{"{0} s"}
                other{"{0} s"}
            }
            hour{
                dnam{"hs."}
            }
            second{
                dnam{"seg."}
                one{"{0} seg."}
                other{"{0} seg."}
                per{"{0}/seg."}
            }
            year{
                dnam{"años"}
                one{"{0} año"}
                other{"{0} años"}
            }
        }
        electric{
            volt{
                dnam{"voltios"}
            }
        }
        power{
            watt{
                dnam{"vatios"}
            }
        }
    }
}
