def generate_look_up_table():
    """ Generate look up table.

    :return: List
    """
    poly = 40961
    table = []
    for index in range(256):
        data = index << 1
        crc = 0
        for _ in range(8, 0, -1):
            data >>= 1
            if (data ^ crc) & 1:
                crc = crc >> 1 ^ poly
            else:
                crc >>= 1
        table.append(crc)
    return table
