Given a string containing a xx:xx:xx:xx:xx:xx address, return as a byte sequence.

    Args:
        addr (str): Bluetooth address in xx:xx:xx:xx:xx:xx format.
        reverse (bool): True if the byte ordering should be reversed in the output.

    Returns:
        A bytearray containing the converted address.

def fmt_addr_raw(addr, reverse=True):
    """Given a string containing a xx:xx:xx:xx:xx:xx address, return as a byte sequence.

    Args:
        addr (str): Bluetooth address in xx:xx:xx:xx:xx:xx format.
        reverse (bool): True if the byte ordering should be reversed in the output.

    Returns:
        A bytearray containing the converted address.
    """
    addr = addr.replace(':', '')
    raw_addr = [int(addr[i:i+2], 16) for i in range(0, len(addr), 2)]
    if reverse:
        raw_addr.reverse()

    # for Python 2, this needs to be a string instead of a bytearray
    if sys.version_info[0] == 2:
        return str(bytearray(raw_addr))
    return bytearray(raw_addr)