code: def overrides(method):
      
      for super_class in _get_base_classes(sys._getframe(2), method.__globals__):
          if hasattr(super_class, method.__name__):
              super_method = getattr(super_class, method.__name__)
              if hasattr(super_method, "__finalized__"):
                  finalized = getattr(super_method, "__finalized__")
                  if finalized:
                      raise AssertionError('Method "%s" is finalized' %
                                           method.__name__)
              if not method.__doc__:
                  method.__doc__ = super_method.__doc__
              return method
      raise AssertionError('No super class method found for "%s"' %
                           method.__name__)
docs: Decorator to indicate that the decorated method overrides a method in
      superclass.
      The decorator code is executed while loading class. Using this method
      should have minimal runtime performance implications.
  
      This is based on my idea about how to do this and fwc:s highly improved
      algorithm for the implementation fwc:s
      algorithm : http://stackoverflow.com/a/14631397/308189
      my answer : http://stackoverflow.com/a/8313042/308189
  
      How to use:
      from overrides import overrides
  
      class SuperClass(object):
          def method(self):
            return 2
  
      class SubClass(SuperClass):
  
          @overrides
          def method(self):
              return 1
  
      :raises  AssertionError if no match in super classes for the method name
      :return  method with possibly added (if the method doesn't have one)
          docstring from super class