code: def _isna_new(obj):
      if is_scalar(obj):
          return libmissing.checknull(obj)
      # hack (for now) because MI registers as ndarray
      elif isinstance(obj, ABCMultiIndex):
          raise NotImplementedError(
              "isna is not defined for MultiIndex"
          )
      elif isinstance(
          obj,
          (
              ABCSeries,
              np.ndarray,
              ABCIndexClass,
              ABCExtensionArray,
              ABCDatetimeArray,
              ABCTimedeltaArray,
          ),
      ):
          return _isna_ndarraylike(obj)
      elif isinstance(obj, ABCGeneric):
          return obj._constructor(obj._data.isna(func=isna))
      elif isinstance(obj, list):
          return _isna_ndarraylike(np.asarray(obj, dtype=object))
      elif hasattr(obj, "__array__"):
          return _isna_ndarraylike(np.asarray(obj))
      else:
          return obj is None
  
file_path: catboost/contrib/python/pandas/py2/pandas/core/dtypes/missing.py
imports: import numpy
  from pandas._libs import lib, missing
  from pandas._libs.tslibs import NaT, iNaT
  from .common import _NS_DTYPE, _TD_DTYPE, ensure_object, is_bool_dtype, is_complex_dtype, is_datetime64_dtype, is_datetime64tz_dtype, is_datetimelike, is_datetimelike_v_numeric, is_dtype_equal, is_extension_array_dtype, is_float_dtype, is_integer_dtype, is_object_dtype, is_period_dtype, is_scalar, is_string_dtype, is_string_like_dtype, is_timedelta64_dtype, needs_i8_conversion, pandas_dtype
  from .generic import ABCDatetimeArray, ABCExtensionArray, ABCGeneric, ABCIndexClass, ABCMultiIndex, ABCSeries, ABCTimedeltaArray
  from .inference import is_list_like
label_desc: Use image node_id 2 for calling a global function with example usage: _isna_new(obj) and returns: libmissing, _isna_ndarraylike, obj, _isna_ndarraylike, _isna_ndarraylike, unknown