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

    assign x_max = 114;

    always @ (*)
        case (x)
        0: y = 16'b0000000000000000;
        1: y = 16'b0000011011111101;
        2: y = 16'b0000110111110101;
        3: y = 16'b0001010011100011;
        4: y = 16'b0001101111000000;
        5: y = 16'b0010001010001000;
        6: y = 16'b0010100100110110;
        7: y = 16'b0010111111000101;
        8: y = 16'b0011011000101110;
        9: y = 16'b0011110001101111;
        10: y = 16'b0100001010000001;
        11: y = 16'b0100100001100001;
        12: y = 16'b0100111000001001;
        13: y = 16'b0101001101110101;
        14: y = 16'b0101100010100010;
        15: y = 16'b0101110110001011;
        16: y = 16'b0110001000101101;
        17: y = 16'b0110011010000100;
        18: y = 16'b0110101010001100;
        19: y = 16'b0110111001000011;
        20: y = 16'b0111000110100101;
        21: y = 16'b0111010010110001;
        22: y = 16'b0111011101100100;
        23: y = 16'b0111100110111011;
        24: y = 16'b0111101110110110;
        25: y = 16'b0111110101010010;
        26: y = 16'b0111111010001110;
        27: y = 16'b0111111101101001;
        28: y = 16'b0111111111100011;
        29: y = 16'b0111111111111100;
        30: y = 16'b0111111110110011;
        31: y = 16'b0111111100001000;
        32: y = 16'b0111110111111100;
        33: y = 16'b0111110010010000;
        34: y = 16'b0111101011000100;
        35: y = 16'b0111100010011011;
        36: y = 16'b0111011000010110;
        37: y = 16'b0111001100110110;
        38: y = 16'b0110111111111111;
        39: y = 16'b0110110001110010;
        40: y = 16'b0110100010010010;
        41: y = 16'b0110010001100010;
        42: y = 16'b0101111111100101;
        43: y = 16'b0101101100011111;
        44: y = 16'b0101011000010100;
        45: y = 16'b0101000011000111;
        46: y = 16'b0100101100111100;
        47: y = 16'b0100010101111000;
        48: y = 16'b0011111101111110;
        49: y = 16'b0011100101010100;
        50: y = 16'b0011001011111110;
        51: y = 16'b0010110010000010;
        52: y = 16'b0010010111100011;
        53: y = 16'b0001111100100111;
        54: y = 16'b0001100001010100;
        55: y = 16'b0001000101101110;
        56: y = 16'b0000101001111010;
        57: y = 16'b0000001101111111;
        58: y = 16'b1111110010000001;
        59: y = 16'b1111010110000110;
        60: y = 16'b1110111010010010;
        61: y = 16'b1110011110101100;
        62: y = 16'b1110000011011001;
        63: y = 16'b1101101000011101;
        64: y = 16'b1101001101111110;
        65: y = 16'b1100110100000010;
        66: y = 16'b1100011010101100;
        67: y = 16'b1100000010000010;
        68: y = 16'b1011101010001000;
        69: y = 16'b1011010011000100;
        70: y = 16'b1010111100111001;
        71: y = 16'b1010100111101100;
        72: y = 16'b1010010011100001;
        73: y = 16'b1010000000011011;
        74: y = 16'b1001101110011110;
        75: y = 16'b1001011101101110;
        76: y = 16'b1001001110001110;
        77: y = 16'b1001000000000001;
        78: y = 16'b1000110011001010;
        79: y = 16'b1000100111101010;
        80: y = 16'b1000011101100101;
        81: y = 16'b1000010100111100;
        82: y = 16'b1000001101110000;
        83: y = 16'b1000001000000100;
        84: y = 16'b1000000011111000;
        85: y = 16'b1000000001001101;
        86: y = 16'b1000000000000100;
        87: y = 16'b1000000000011101;
        88: y = 16'b1000000010010111;
        89: y = 16'b1000000101110010;
        90: y = 16'b1000001010101110;
        91: y = 16'b1000010001001010;
        92: y = 16'b1000011001000101;
        93: y = 16'b1000100010011100;
        94: y = 16'b1000101101001111;
        95: y = 16'b1000111001011011;
        96: y = 16'b1001000110111101;
        97: y = 16'b1001010101110100;
        98: y = 16'b1001100101111100;
        99: y = 16'b1001110111010011;
        100: y = 16'b1010001001110101;
        101: y = 16'b1010011101011110;
        102: y = 16'b1010110010001011;
        103: y = 16'b1011000111110111;
        104: y = 16'b1011011110011111;
        105: y = 16'b1011110101111111;
        106: y = 16'b1100001110010001;
        107: y = 16'b1100100111010010;
        108: y = 16'b1101000000111011;
        109: y = 16'b1101011011001010;
        110: y = 16'b1101110101111000;
        111: y = 16'b1110010001000000;
        112: y = 16'b1110101100011101;
        113: y = 16'b1111001000001011;
        114: y = 16'b1111100100000011;
        default: y = 16'b0;
        endcase

endmodule