code: def prepare_arguments(self, attributes):
          
          kwargs = dict(attributes)
          # 1. Extension points
          kwargs = self.factory._adjust_kwargs(**kwargs)
  
          # 2. Remove hidden objects
          kwargs = {
              k: v for k, v in kwargs.items()
              if k not in self.exclude and k not in self.parameters and v is not declarations.SKIP
          }
  
          # 3. Rename fields
          for old_name, new_name in self.rename.items():
              if old_name in kwargs:
                  kwargs[new_name] = kwargs.pop(old_name)
  
          # 4. Extract inline args
          args = tuple(
              kwargs.pop(arg_name)
              for arg_name in self.inline_args
          )
  
          return args, kwargs
docs: Convert an attributes dict to a (args, kwargs) tuple.