code: def apply(cls, self, *args, **kwargs):
          
          for key in kwargs:
            if key in [ x.name for x in cls.INPUTS ]:
              setattr(self, key, kwargs[key])
            if key in [ x.name for x in cls.OUTPUTS ]:
              setattr(self, key, kwargs[key])
            if key in [ x.name for x in cls.PARAMETERS ]:
              setattr(self, key, kwargs[key])
docs: Applies kwargs arguments to the instance passed as the first
          argument to the call.
  
          For defined INPUTS, OUTPUTS and PARAMETERS the method extracts
          a corresponding value from kwargs and sets it as an instance attribute.
          For example, if the processor has a 'foo' parameter declared and
          'foo = something' is passed to apply(), self.foo will become
          'something'.