module lut_As
(
    input      [6:0] x,
    output     [6:0] x_max,
    output reg [15:0] y
);

    assign x_max = 101;

    always @ (*)
        case (x)
        0: y = 16'b0000000000000000;
        1: y = 16'b0000011111100001;
        2: y = 16'b0000111110111011;
        3: y = 16'b0001011110000101;
        4: y = 16'b0001111100111000;
        5: y = 16'b0010011011001101;
        6: y = 16'b0010111000111101;
        7: y = 16'b0011010101111111;
        8: y = 16'b0011110010001110;
        9: y = 16'b0100001101100010;
        10: y = 16'b0100100111110100;
        11: y = 16'b0101000000111110;
        12: y = 16'b0101011000111011;
        13: y = 16'b0101101111100100;
        14: y = 16'b0110000100110011;
        15: y = 16'b0110011000100101;
        16: y = 16'b0110101010110011;
        17: y = 16'b0110111011011001;
        18: y = 16'b0111001010010100;
        19: y = 16'b0111010111011111;
        20: y = 16'b0111100010111000;
        21: y = 16'b0111101100011100;
        22: y = 16'b0111110100001000;
        23: y = 16'b0111111001111011;
        24: y = 16'b0111111101110011;
        25: y = 16'b0111111111101111;
        26: y = 16'b0111111111101111;
        27: y = 16'b0111111101110011;
        28: y = 16'b0111111001111011;
        29: y = 16'b0111110100001000;
        30: y = 16'b0111101100011100;
        31: y = 16'b0111100010111000;
        32: y = 16'b0111010111011111;
        33: y = 16'b0111001010010100;
        34: y = 16'b0110111011011001;
        35: y = 16'b0110101010110011;
        36: y = 16'b0110011000100101;
        37: y = 16'b0110000100110011;
        38: y = 16'b0101101111100100;
        39: y = 16'b0101011000111011;
        40: y = 16'b0101000000111110;
        41: y = 16'b0100100111110100;
        42: y = 16'b0100001101100010;
        43: y = 16'b0011110010001110;
        44: y = 16'b0011010101111111;
        45: y = 16'b0010111000111101;
        46: y = 16'b0010011011001101;
        47: y = 16'b0001111100111000;
        48: y = 16'b0001011110000101;
        49: y = 16'b0000111110111011;
        50: y = 16'b0000011111100001;
        51: y = 16'b0000000000000000;
        52: y = 16'b1111100000011111;
        53: y = 16'b1111000001000101;
        54: y = 16'b1110100001111011;
        55: y = 16'b1110000011001000;
        56: y = 16'b1101100100110011;
        57: y = 16'b1101000111000011;
        58: y = 16'b1100101010000001;
        59: y = 16'b1100001101110010;
        60: y = 16'b1011110010011110;
        61: y = 16'b1011011000001100;
        62: y = 16'b1010111111000010;
        63: y = 16'b1010100111000101;
        64: y = 16'b1010010000011100;
        65: y = 16'b1001111011001101;
        66: y = 16'b1001100111011011;
        67: y = 16'b1001010101001101;
        68: y = 16'b1001000100100111;
        69: y = 16'b1000110101101100;
        70: y = 16'b1000101000100001;
        71: y = 16'b1000011101001000;
        72: y = 16'b1000010011100100;
        73: y = 16'b1000001011111000;
        74: y = 16'b1000000110000101;
        75: y = 16'b1000000010001101;
        76: y = 16'b1000000000010001;
        77: y = 16'b1000000000010001;
        78: y = 16'b1000000010001101;
        79: y = 16'b1000000110000101;
        80: y = 16'b1000001011111000;
        81: y = 16'b1000010011100100;
        82: y = 16'b1000011101001000;
        83: y = 16'b1000101000100001;
        84: y = 16'b1000110101101100;
        85: y = 16'b1001000100100111;
        86: y = 16'b1001010101001101;
        87: y = 16'b1001100111011011;
        88: y = 16'b1001111011001101;
        89: y = 16'b1010010000011100;
        90: y = 16'b1010100111000101;
        91: y = 16'b1010111111000010;
        92: y = 16'b1011011000001100;
        93: y = 16'b1011110010011110;
        94: y = 16'b1100001101110010;
        95: y = 16'b1100101010000001;
        96: y = 16'b1101000111000011;
        97: y = 16'b1101100100110011;
        98: y = 16'b1110000011001000;
        99: y = 16'b1110100001111011;
        100: y = 16'b1111000001000101;
        101: y = 16'b1111100000011111;
        default: y = 16'b0;
        endcase

endmodule