def steps(steps_class):
 if hasattr(steps_class, '__init__'):
  _init_ = getattr(steps_class, '__init__')
  def init(self, *args, **kwargs):
   _init_(self, *args, **kwargs)
   STEP_REGISTRY.load_steps(self)
 else:
  def init(self, *args, **kwargs):
   STEP_REGISTRY.load_steps(self)
 setattr(steps_class, '__init__', init)
 return steps_class

def steps ( steps_class ) : if hasattr ( steps_class , '__init__' ) : _init_ = getattr ( steps_class , '__init__' ) def init ( self , * args , ** kwargs ) : _init_ ( self , * args , ** kwargs ) STEP_REGISTRY . load_steps ( self ) else : def init ( self , * args , ** kwargs ) : STEP_REGISTRY . load_steps ( self ) setattr ( steps_class , '__init__' , init ) return steps_class
decorates a class .