code: def input(self, *args, **kwargs):
          
          errors = []
  
          if args and self.arg_names:
              args = list(args)
              # Replace args inline that have adapters
              for i, (key, val) in enumerate(izip(self.arg_names, args)):
                  try:
                      args[i] = self._adapt_param(key, val)
                  except AnticipateParamError as e:
                      errors.append(e)
              args = tuple(args)
  
          if kwargs and self.params:
              # Adapt all adaptable arguments
              for key, val in kwargs.items():
                  try:
                      kwargs[key] = self._adapt_param(key, val)
                  except AnticipateParamError as e:
                      errors.append(e)
  
          if errors:
              raise AnticipateErrors(
                  message='Invalid input for %s' % self.func,
                  errors=errors)
  
          return args, kwargs
docs: Adapt the input and check for errors.
  
          Returns a tuple of adapted (args, kwargs) or raises
          AnticipateErrors