﻿// ***************************************************************************
// *
// * Copyright (C) 2015 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/fr_HT.xml
// *
// ***************************************************************************
fr_HT{
    Version{"2.1.19.94"}
    units{
        area{
            hectare{
                dnam{"carreau"}
                one{"{0}carreau"}
                other{"{0}carreaux"}
            }
        }
        volume{
            cubic-centimeter{
                per{"{0} pour chaque centimetre cube"}
            }
            cubic-meter{
                per{"{0} pour chaque metre cube"}
            }
        }
    }
    unitsNarrow{
        mass{
            gram{
                dnam{"gr."}
            }
        }
    }
    unitsShort{
        duration{
            century{
                dnam{"sec"}
            }
        }
        mass{
            carat{
                dnam{"kr"}
                one{"{0}kr"}
                other{"{0}kr"}
            }
            gram{
                one{"{0}gr"}
                other{"{0}gr"}
            }
        }
    }
}
