code: def get_result_type_2(call, dflt_stype):
      """Try to infer result storage type when operating on two sparse matrices"""
      if call is not None and dflt_stype != "default":
          zero = np.zeros(([1]))
          need_default = False
          for outer in [zero, np.ones(zero.shape)]:
              for inner in [zero, np.ones(zero.shape)]:
                  result = do_normalize(call(outer, inner))
                  if not almost_equal(result, zero, equal_nan=True):
                      need_default = True
                      break
              if need_default is True:
                  break
  
          if not need_default and dflt_stype is not None:
              expected_result_type = dflt_stype
          else:
              expected_result_type = "default"
      else:
          expected_result_type = "default"
  
      return expected_result_type
  
imports: from mxnet.test_utils import *
  from mxnet.base import MXNetError
  import pytest
  from common import assertRaises
  import random
  import warnings
label_desc: Use image node_id 4 for calling a global function with example usage: get_result_type_2(call, dflt_stype) and returns: expected_result_type