code: def makeNotEqualFunction(self, originalNotEqualFunction, syntheticMemberList):
          
  
          def not_equal(instance, other):
              if instance.__class__ is not other.__class__:
                  return NotImplemented
  
              for m in syntheticMemberList:
                  if getattr(instance, m.privateMemberName()) != getattr(other, m.privateMemberName()):
                      return True
  
              if inspect.isfunction(originalNotEqualFunction) or inspect.ismethod(originalNotEqualFunction):
                  return originalNotEqualFunction(instance, other)
  
              return False
  
          return not_equal
docs: :param list(SyntheticMember) syntheticMemberList: a list of the class' synthetic members.