<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def output_files(self):
 """Return a list of the output files produced by this link. For `Link` sub-classes this will return the union of all the output files of each internal `Link`. That is to say this will include files produced by one `Link` in a `Chain` and used as input to another `Link` in the `Chain` """

        ret_list = []
        for key, val in self.file_dict.items():
            # For output files we only want files that were marked as output
            if val & FileFlags.output_mask:
                ret_list.append(key)
        return ret_list