code: def eval(cls, number, ndigits):
      if number.is_integer and ndigits >= 0:
          return number
      elif isinstance(number, sympy.Number) and isinstance(
          ndigits, sympy.Integer
      ):
          value_type, output_type = (
              (int, sympy.Integer)
              if isinstance(number, sympy.Integer)
              else (float, sympy.Float)
          )
          return output_type(round(value_type(number), int(ndigits)))
  
imports: import sympy
  from sympy import S
  from sympy.core.logic import fuzzy_and, fuzzy_not, fuzzy_or
label_desc: Use image node_id 1 for calling the RoundDecimal obj's underlying member method code with example usage: obj.eval(cls, number, ndigits) and returns: number, output_type