<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_prefix(self, name, *args, **kwargs):
 """ Adds a new prefix to the workdir. Args: name(str):
 Name of the new prefix to add *args: args to pass along to the prefix constructor *kwargs: kwargs to pass along to the prefix constructor Returns: The newly created prefix Raises: LagoPrefixAlreadyExistsError: if prefix name already exists in the workdir """

        if os.path.exists(self.join(name)):
            raise LagoPrefixAlreadyExistsError(name, self.path)

        self.prefixes[name] = self.prefix_class(
            self.join(name), *args, **kwargs
        )
        self.prefixes[name].initialize()
        if self.current is None:
            self.set_current(name)

        return self.prefixes[name]