code: def Compare(fromMo, toMo, diff):
  	
  	from UcsBase import UcsUtils
  
  	if (fromMo.classId != toMo.classId):
  		return CompareStatus.TypesDifferent
  
  	for prop in UcsUtils.GetUcsPropertyMetaAttributeList(str(fromMo.classId)):
  		propMeta = UcsUtils.IsPropertyInMetaIgnoreCase(fromMo.classId, prop)
  		if propMeta != None:
  			if ((propMeta.access == UcsPropertyMeta.Internal) or (propMeta.access == UcsPropertyMeta.ReadOnly) or (
  						prop in toMo._excludePropList)):
  				continue
  			if ((toMo.__dict__.has_key(prop)) and (fromMo.getattr(prop) != toMo.getattr(prop))):
  				diff.append(prop)
  
  	if (len(diff) > 0):
  		return CompareStatus.PropsDifferent
  
  	return CompareStatus.Equal
docs: Internal method to support CompareManagedObject functionality.