def __new__ ( cls, class_name, bases, class_dict ):

        # Make sure the correct usage is being applied:
        if 2 > len( bases ):
            raise TypeError, \
                  "Correct usage is: class FooCategory(Category,Foo):"

        # Process any traits-related information in the class dictionary:
        MetaCategoryObject( cls, class_name, bases, class_dict, True )

        # Move all remaining items in our class dictionary to the base class's
        # dictionary:
        if len( bases ) == 2:
            category_class = bases[1]
            for name, value in class_dict.items():
                if not hasattr( category_class, name ):
                    setattr( category_class, name, value )
                    del class_dict[ name ]

        # Finish building the class using the updated class dictionary:
        return type.__new__( cls, class_name, bases, class_dict )

#-------------------------------------------------------------------------------
#  'MetaCategoryObject' class:
#-------------------------------------------------------------------------------
dataset/ETHPy150Open enthought/traits/traits/category.py/MetaCategory.__new__/swapped operands of `>`