add __metaclass__ usage