def number_to_numeral(number, mode, rounding)
      if number.special? # @context.special?(number)
        special_num_to_numeral(number)
      else
        if mode == :exact
          exact_num_to_numeral number, rounding
        else # mode == :approximate
          approximate_num_to_numeral(number, rounding)
        end
      end
    end
def number_to_numeral(number, mode, rounding)
      if number.special? # @context.special?(number)
        special_num_to_numeral(number)
      else
        if mode == :exact
          exact_num_to_numeral number, rounding
        else # mode == :approximate
          approximate_num_to_numeral(number, rounding)
        end
      end
    end
mode is either :exact or :approximate