public function format($sCode, $nValue, $bIncludeSymbol = true)
    {
        try {

            $oCurrency = $this->getByIsoCode($sCode);
            $sOut      = number_format(
                $nValue,
                $oCurrency->decimal_precision,
                $oCurrency->decimal_symbol,
                $oCurrency->thousands_separator
            );

            if ($bIncludeSymbol) {
                if ($oCurrency->symbol_position == 'BEFORE') {
                    $sOut = $oCurrency->symbol . $sOut;
                } else {
                    $sOut = $sOut . $oCurrency->symbol;
                }
            }

            return $sOut;

        } catch (\Exception $e) {
            return '[CURRENCY FORMATTING FAILED: ' . $e->getMessage() . ']';
        }
    }