docs: def execute(self, request, target_route):
  		""" :meth:`.WWebServiceProto.execute` method implementation
  		"""
  		presenter = self.create_presenter(request, target_route)
  		presenter_name = target_route.presenter_name()
  		action_name = target_route.presenter_action()
  		presenter_args = target_route.presenter_args()
  
  		if hasattr(presenter, action_name) is False:
  			raise RuntimeError('No such action "%s" for "%s" presenter' % (action_name, presenter_name))
  
  		action = getattr(presenter, action_name)
  		if ismethod(action) is False:
  			raise RuntimeError(
  				'Unable to execute "%s" action for "%s" presenter' % (action_name, presenter_name)
  			)
  
  		args_spec = getfullargspec(action)
  		defaults = len(args_spec.defaults) if args_spec.defaults is not None else 0
  		action_args = list()
  		action_kwargs = dict()
  
  		for i in range(len(args_spec.args)):
  			arg = args_spec.args[i]
  			if arg == 'self':
  				continue
  
  			is_kwarg = i >= (len(args_spec.args) - defaults)
  
  			if is_kwarg is False:
  				action_args.append(presenter_args[arg])
  			elif arg in presenter_args:
  				action_kwargs[arg] = presenter_args[arg]
  
  		return action(*action_args, **action_kwargs)