<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def send_magic_packet(*macs, **kwargs):
 """ Wake up computers having any of the given mac addresses. Wake on lan must be enabled on the host device. Args: macs (str):
 One or more macaddresses of machines to wake. Keyword Args: ip_address (str):
 the ip address of the host to send the magic packet to (default "255.255.255.255") port (int):
 the port of the host to send the magic packet to (default 9) """

    packets = []
    ip = kwargs.pop('ip_address', BROADCAST_IP)
    port = kwargs.pop('port', DEFAULT_PORT)
    for k in kwargs:
        raise TypeError('send_magic_packet() got an unexpected keyword '
                        'argument {!r}'.format(k))

    for mac in macs:
        packet = create_magic_packet(mac)
        packets.append(packet)

    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    sock.connect((ip, port))
    for packet in packets:
        sock.send(packet)
    sock.close()