// ****************************************************************************
// *                                                                          *
// * COPYRIGHT:                                                               *
// * (C) Copyright Taligent, Inc.,  1997                                      *
// * (C) Copyright International Business Machines Corporation,  1997-99      *
// * Licensed Material - Program-Property of IBM - All Rights Reserved.       *
// * US Government Users Restricted Rights - Use, duplication, or disclosure  *
// * restricted by GSA ADP Schedule Contract with IBM Corp.                   *
// *                                                                          *
// ****************************************************************************

no_NO {
    CurrencyElements { 
            "kr",
            "NOK",
            ",",
    }
    LocaleString { "no_NO_B" }
    NumberPatterns { 
            "#,##0.###;-#,##0.###",
            "\u00A4 #,##0.00;\u00A4 -#,##0.00",
            "#,##0%",
    }
    ShortCountry { "NOR" }
}
