<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def raw_command(self, netfn, command, bridge_request=(), data=(), delay_xmit=None, retry=True, timeout=None):
 """Send raw ipmi command to BMC This allows arbitrary IPMI bytes to be issued. This is commonly used for certain vendor specific commands. Example: ipmicmd.raw_command(netfn=0,command=4,data=(5)) :param netfn: Net function number :param command: Command value :param bridge_request: The target slave address and channel number for the bridge request. :param data: Command data as a tuple or list :param retry: Whether or not to retry command if no response received. Defaults to True :param timeout: A custom amount of time to wait for initial reply :returns: dict -- The response from IPMI device """

        rsp = self.ipmi_session.raw_command(netfn=netfn, command=command,
                                            bridge_request=bridge_request,
                                            data=data, delay_xmit=delay_xmit,
                                            retry=retry, timeout=timeout)
        if 'data' in rsp:
            rsp['data'] = list(rsp['data'])
        return rsp