<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def compression_details(self):
 """Return as a 3-tuple, this PREMIS compression event's program, version, and algorithm used to perform the compression. """

        event_type = self.findtext("event_type")
        if event_type != "compression":
            raise AttributeError(
                'PREMIS events of type "{}" have no compression'
                " details".format(event_type)
            )
        parsed_compression_event_detail = self.parsed_event_detail
        compression_program = _get_event_detail_attr(
            "program", parsed_compression_event_detail
        )
        compression_algorithm = _get_event_detail_attr(
            "algorithm", parsed_compression_event_detail
        )
        compression_program_version = _get_event_detail_attr(
            "version", parsed_compression_event_detail
        )
        archive_tool = {"7z": "7-Zip"}.get(compression_program, compression_program)
        return compression_algorithm, compression_program_version, archive_tool