code: def patchproperty(*cls, **kwargs):
      
  
      def _patch(fun):
          m = kwargs.pop('property', None) or fun.__name__
          p = property(fun)
          for c in cls:
              setattr(c, m, p)
  
      def wrap(fun):
          _patch(fun)
          return fun
  
      return wrap
docs: class getter 함수 패치 decorator
      EX)
      class B(A):
          pass
  
      @patchproperty(B)
      def prop(self):
          return 'hello'
  
      :param cls:
      :param kwargs: