title: MetaClass Conflict: Base Class and Derived class have different metaclass
body: <pre><code>class AbstractBaseClass:
    __metaclass__ = abc.ABCMeta
  
    @abc.abstractmethod
    def someMethod()
  
  class DerviedClass(AbstractBaseClass):
    __metaclass__ = Singleton
  
    def someMethod():
      """dosomething"""
      pass
  
  #defines singleton design pattern not defining for sake of simplicity 
  class Singleton:
  </code></pre>
  
  <p>(see here <a href="https://stackoverflow.com/questions/6760685/creating-a-singleton-in-python">Creating a singleton in Python</a>)</p>
  
  <p>I see following error </p>
  
  <blockquote>
    <p>TypeError: Error when calling the metaclass bases
        metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases</p>
  </blockquote>
  
  <p>This seems to be becauase base class and derived class have two different metaclass defination. how do i go around this problem?</p>