code: def _infer_embedded_object(value):
      
  
      if value is None:
          # The default behavior is to assume that a value of None is not
          # an embedded object. If the user wants that, they must specify
          # the embedded_object parameter.
          return False
  
      if isinstance(value, list):
          if not value:
              # The default behavior is to assume that an empty array value
              # is not an embedded object. If the user wants that, they must
              # specify the embedded_object parameter.
              return False
          value = value[0]
  
      if isinstance(value, CIMInstance):
          # The default behavior is to produce 'instance', although 'object'
          # would also be valid.
          return 'instance'
  
      if isinstance(value, CIMClass):
          return 'object'
  
      return False
docs: Infer CIMProperty/CIMParameter.embedded_object from the CIM value.