// Generated by FIR Compiler
// ************************************************************
// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
// ************************************************************
// Copyright (C) 1991-2005 Altera Corporation
// Any megafunction design, and related net list (encrypted or decrypted),
// support information, device programming or simulation file, and any other
// associated documentation or information provided by Altera or a partner
// under Altera's Megafunction Partnership Program may be used only to
// program PLD devices (but not masked PLD devices) from Altera.  Any other
// use of such megafunction design, net list, support information, device
// programming or simulation file, or any other related documentation or
// information is prohibited for any other purpose, including, but not
// limited to modification, reverse engineering, de-compiling, or use with
// any other silicon devices, unless such use is explicitly licensed under
// a separate agreement with Altera or a megafunction partner.  Title to
// the intellectual property, including patents, copyrights, trademarks,
// trade secrets, or maskworks, embodied in any such megafunction design,
// net list, support information, device programming or simulation file, or
// any other related documentation or information provided by Altera or a
// megafunction partner, remains with Altera, the megafunction partner, or
// their respective licensors.  No other licenses, including any licenses
// needed under any third party's intellectual property, are provided herein.
// 00
// altera message_off 10036
(* altera_attribute = "-name MESSAGE_DISABLE 15400; -name MESSAGE_DISABLE 14130; -name MESSAGE_DISABLE 10036; -name MESSAGE_DISABLE 12020; -name MESSAGE_DISABLE 12030; -name MESSAGE_DISABLE 12010; -name MESSAGE_DISABLE 12110; -name MESSAGE_DISABLE 14320; -name MESSAGE_DISABLE 13410" *)
module FIR_3MHz_low_st (clk, 
              rst, 
              data_in, 
              clk_en, 
              rdy_to_ld, 
              done, 
              fir_result); 
parameter DATA_WIDTH  = 14;
parameter COEF_WIDTH  = 17;
parameter ACCUM_WIDTH = 36;

parameter MSB_RM = 0;
parameter LSB_RM = 22;
parameter WIDTH_SAT = ACCUM_WIDTH-LSB_RM;
input clk, rst;
input [DATA_WIDTH-1:0] data_in;
input clk_en;
output rdy_to_ld;
wire rdy_to_ld;
wire rdy_int;
wire data_ld;
output done;
wire done;
wire done_int;
output [ACCUM_WIDTH-MSB_RM-LSB_RM-1:0] fir_result;
wire addr_low;
assign addr_low = 1'b0;


//--- Parallel TDL Storage ---
wire inv_rst;
assign inv_rst = ~rst;
assign data_ld = rdy_int;
wire [13:0] tdl_0_n;
wire [13:0] tdl_1_n;
wire [13:0] tdl_2_n;
wire [13:0] tdl_3_n;
wire [13:0] tdl_4_n;
wire [13:0] tdl_5_n;
wire [13:0] tdl_6_n;
wire [13:0] tdl_7_n;
wire [13:0] tdl_8_n;
wire [13:0] tdl_9_n;
wire [13:0] tdl_10_n;
wire [13:0] tdl_11_n;
wire [13:0] tdl_12_n;
wire [13:0] tdl_13_n;
wire [13:0] tdl_14_n;
wire [13:0] tdl_15_n;
wire [13:0] tdl_16_n;
wire [13:0] tdl_17_n;
wire [13:0] tdl_18_n;
wire [13:0] tdl_19_n;
wire [13:0] tdl_20_n;
wire [13:0] tdl_21_n;
wire [13:0] tdl_22_n;
wire [13:0] tdl_23_n;
wire [13:0] tdl_24_n;
wire [13:0] tdl_25_n;
wire [13:0] tdl_26_n;
wire [13:0] tdl_27_n;
wire [13:0] tdl_28_n;
wire [13:0] tdl_29_n;
wire [13:0] tdl_30_n;
wire [13:0] tdl_31_n;
wire [13:0] tdl_32_n;
wire [13:0] tdl_33_n;
wire [13:0] tdl_34_n;
wire [13:0] tdl_35_n;
wire [13:0] tdl_36_n;


//--- TDL  ---
tdl_da_lc Utdldalc0n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(data_in), .data_out(tdl_0_n) );
defparam Utdldalc0n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc1n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_0_n), .data_out(tdl_1_n) );
defparam Utdldalc1n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc2n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_1_n), .data_out(tdl_2_n) );
defparam Utdldalc2n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc3n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_2_n), .data_out(tdl_3_n) );
defparam Utdldalc3n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc4n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_3_n), .data_out(tdl_4_n) );
defparam Utdldalc4n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc5n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_4_n), .data_out(tdl_5_n) );
defparam Utdldalc5n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc6n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_5_n), .data_out(tdl_6_n) );
defparam Utdldalc6n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc7n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_6_n), .data_out(tdl_7_n) );
defparam Utdldalc7n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc8n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_7_n), .data_out(tdl_8_n) );
defparam Utdldalc8n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc9n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_8_n), .data_out(tdl_9_n) );
defparam Utdldalc9n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc10n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_9_n), .data_out(tdl_10_n) );
defparam Utdldalc10n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc11n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_10_n), .data_out(tdl_11_n) );
defparam Utdldalc11n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc12n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_11_n), .data_out(tdl_12_n) );
defparam Utdldalc12n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc13n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_12_n), .data_out(tdl_13_n) );
defparam Utdldalc13n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc14n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_13_n), .data_out(tdl_14_n) );
defparam Utdldalc14n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc15n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_14_n), .data_out(tdl_15_n) );
defparam Utdldalc15n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc16n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_15_n), .data_out(tdl_16_n) );
defparam Utdldalc16n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc17n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_16_n), .data_out(tdl_17_n) );
defparam Utdldalc17n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc18n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_17_n), .data_out(tdl_18_n) );
defparam Utdldalc18n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc19n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_18_n), .data_out(tdl_19_n) );
defparam Utdldalc19n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc20n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_19_n), .data_out(tdl_20_n) );
defparam Utdldalc20n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc21n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_20_n), .data_out(tdl_21_n) );
defparam Utdldalc21n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc22n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_21_n), .data_out(tdl_22_n) );
defparam Utdldalc22n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc23n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_22_n), .data_out(tdl_23_n) );
defparam Utdldalc23n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc24n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_23_n), .data_out(tdl_24_n) );
defparam Utdldalc24n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc25n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_24_n), .data_out(tdl_25_n) );
defparam Utdldalc25n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc26n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_25_n), .data_out(tdl_26_n) );
defparam Utdldalc26n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc27n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_26_n), .data_out(tdl_27_n) );
defparam Utdldalc27n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc28n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_27_n), .data_out(tdl_28_n) );
defparam Utdldalc28n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc29n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_28_n), .data_out(tdl_29_n) );
defparam Utdldalc29n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc30n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_29_n), .data_out(tdl_30_n) );
defparam Utdldalc30n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc31n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_30_n), .data_out(tdl_31_n) );
defparam Utdldalc31n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc32n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_31_n), .data_out(tdl_32_n) );
defparam Utdldalc32n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc33n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_32_n), .data_out(tdl_33_n) );
defparam Utdldalc33n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc34n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_33_n), .data_out(tdl_34_n) );
defparam Utdldalc34n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc35n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_34_n), .data_out(tdl_35_n) );
defparam Utdldalc35n.WIDTH = DATA_WIDTH;
tdl_da_lc Utdldalc36n (.clk(clk), .clk_en(rdy_int & clk_en),.rst(rst),.data_in(tdl_35_n), .data_out(tdl_36_n) );
defparam Utdldalc36n.WIDTH = DATA_WIDTH;


// --- ROM LUTs ---- 
// symmetrical adders ...
wire [14:0] sym_res_0_n;
uadd_cen U_0_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_0_n), .bin(tdl_36_n), .res(sym_res_0_n) );
defparam U_0_sym_add.IN_WIDTH = 14;
defparam U_0_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_1_n;
uadd_cen U_1_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_1_n), .bin(tdl_35_n), .res(sym_res_1_n) );
defparam U_1_sym_add.IN_WIDTH = 14;
defparam U_1_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_2_n;
uadd_cen U_2_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_2_n), .bin(tdl_34_n), .res(sym_res_2_n) );
defparam U_2_sym_add.IN_WIDTH = 14;
defparam U_2_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_3_n;
uadd_cen U_3_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_3_n), .bin(tdl_33_n), .res(sym_res_3_n) );
defparam U_3_sym_add.IN_WIDTH = 14;
defparam U_3_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_4_n;
uadd_cen U_4_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_4_n), .bin(tdl_32_n), .res(sym_res_4_n) );
defparam U_4_sym_add.IN_WIDTH = 14;
defparam U_4_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_5_n;
uadd_cen U_5_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_5_n), .bin(tdl_31_n), .res(sym_res_5_n) );
defparam U_5_sym_add.IN_WIDTH = 14;
defparam U_5_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_6_n;
uadd_cen U_6_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_6_n), .bin(tdl_30_n), .res(sym_res_6_n) );
defparam U_6_sym_add.IN_WIDTH = 14;
defparam U_6_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_7_n;
uadd_cen U_7_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_7_n), .bin(tdl_29_n), .res(sym_res_7_n) );
defparam U_7_sym_add.IN_WIDTH = 14;
defparam U_7_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_8_n;
uadd_cen U_8_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_8_n), .bin(tdl_28_n), .res(sym_res_8_n) );
defparam U_8_sym_add.IN_WIDTH = 14;
defparam U_8_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_9_n;
uadd_cen U_9_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_9_n), .bin(tdl_27_n), .res(sym_res_9_n) );
defparam U_9_sym_add.IN_WIDTH = 14;
defparam U_9_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_10_n;
uadd_cen U_10_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_10_n), .bin(tdl_26_n), .res(sym_res_10_n) );
defparam U_10_sym_add.IN_WIDTH = 14;
defparam U_10_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_11_n;
uadd_cen U_11_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_11_n), .bin(tdl_25_n), .res(sym_res_11_n) );
defparam U_11_sym_add.IN_WIDTH = 14;
defparam U_11_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_12_n;
uadd_cen U_12_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_12_n), .bin(tdl_24_n), .res(sym_res_12_n) );
defparam U_12_sym_add.IN_WIDTH = 14;
defparam U_12_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_13_n;
uadd_cen U_13_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_13_n), .bin(tdl_23_n), .res(sym_res_13_n) );
defparam U_13_sym_add.IN_WIDTH = 14;
defparam U_13_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_14_n;
uadd_cen U_14_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_14_n), .bin(tdl_22_n), .res(sym_res_14_n) );
defparam U_14_sym_add.IN_WIDTH = 14;
defparam U_14_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_15_n;
uadd_cen U_15_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_15_n), .bin(tdl_21_n), .res(sym_res_15_n) );
defparam U_15_sym_add.IN_WIDTH = 14;
defparam U_15_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_16_n;
uadd_cen U_16_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_16_n), .bin(tdl_20_n), .res(sym_res_16_n) );
defparam U_16_sym_add.IN_WIDTH = 14;
defparam U_16_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_17_n;
uadd_cen U_17_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_17_n), .bin(tdl_19_n), .res(sym_res_17_n) );
defparam U_17_sym_add.IN_WIDTH = 14;
defparam U_17_sym_add.PIPE_DEPTH = 1;
wire [14:0] sym_res_18_n;
uadd_cen U_18_sym_add (.clk(clk), .gclk_en(clk_en), .ain(tdl_18_n), .bin(14'd0), .res(sym_res_18_n) );
defparam U_18_sym_add.IN_WIDTH = 14;
defparam U_18_sym_add.PIPE_DEPTH = 1;


wire [18:0] lut_val_0_n_0_pp;
rom_lut Ur0_n_0_pp (.addr_in( {sym_res_3_n[0],sym_res_2_n[0],sym_res_1_n[0],sym_res_0_n[0] } ), .data_out( lut_val_0_n_0_pp[14:0]) ) ;
 defparam Ur0_n_0_pp.DATA_WIDTH = 15;
defparam Ur0_n_0_pp.C0 = 15'd                   0;
defparam Ur0_n_0_pp.C1 = 15'd               28003;
defparam Ur0_n_0_pp.C2 = 15'd               31526;
defparam Ur0_n_0_pp.C3 = 15'd               26761;
defparam Ur0_n_0_pp.C4 = 15'd                2767;
defparam Ur0_n_0_pp.C5 = 15'd               30770;
defparam Ur0_n_0_pp.C6 = 15'd                1525;
defparam Ur0_n_0_pp.C7 = 15'd               29528;
defparam Ur0_n_0_pp.C8 = 15'd                7207;
defparam Ur0_n_0_pp.C9 = 15'd                2442;
defparam Ur0_n_0_pp.CA = 15'd                5965;
defparam Ur0_n_0_pp.CB = 15'd                1200;
defparam Ur0_n_0_pp.CC = 15'd                9974;
defparam Ur0_n_0_pp.CD = 15'd                5209;
defparam Ur0_n_0_pp.CE = 15'd                8732;
defparam Ur0_n_0_pp.CF = 15'd                3967;
assign lut_val_0_n_0_pp[18] = lut_val_0_n_0_pp[14];
assign lut_val_0_n_0_pp[17] = lut_val_0_n_0_pp[14];
assign lut_val_0_n_0_pp[16] = lut_val_0_n_0_pp[14];
assign lut_val_0_n_0_pp[15] = lut_val_0_n_0_pp[14];
wire [18:0] lut_val_0_n_1_pp;
rom_lut Ur0_n_1_pp (.addr_in( {sym_res_3_n[1],sym_res_2_n[1],sym_res_1_n[1],sym_res_0_n[1] } ), .data_out( lut_val_0_n_1_pp[14:0]) ) ;
 defparam Ur0_n_1_pp.DATA_WIDTH = 15;
defparam Ur0_n_1_pp.C0 = 15'd                   0;
defparam Ur0_n_1_pp.C1 = 15'd               28003;
defparam Ur0_n_1_pp.C2 = 15'd               31526;
defparam Ur0_n_1_pp.C3 = 15'd               26761;
defparam Ur0_n_1_pp.C4 = 15'd                2767;
defparam Ur0_n_1_pp.C5 = 15'd               30770;
defparam Ur0_n_1_pp.C6 = 15'd                1525;
defparam Ur0_n_1_pp.C7 = 15'd               29528;
defparam Ur0_n_1_pp.C8 = 15'd                7207;
defparam Ur0_n_1_pp.C9 = 15'd                2442;
defparam Ur0_n_1_pp.CA = 15'd                5965;
defparam Ur0_n_1_pp.CB = 15'd                1200;
defparam Ur0_n_1_pp.CC = 15'd                9974;
defparam Ur0_n_1_pp.CD = 15'd                5209;
defparam Ur0_n_1_pp.CE = 15'd                8732;
defparam Ur0_n_1_pp.CF = 15'd                3967;
assign lut_val_0_n_1_pp[18] = lut_val_0_n_1_pp[14];
assign lut_val_0_n_1_pp[17] = lut_val_0_n_1_pp[14];
assign lut_val_0_n_1_pp[16] = lut_val_0_n_1_pp[14];
assign lut_val_0_n_1_pp[15] = lut_val_0_n_1_pp[14];
wire [18:0] lut_val_0_n_2_pp;
rom_lut Ur0_n_2_pp (.addr_in( {sym_res_3_n[2],sym_res_2_n[2],sym_res_1_n[2],sym_res_0_n[2] } ), .data_out( lut_val_0_n_2_pp[14:0]) ) ;
 defparam Ur0_n_2_pp.DATA_WIDTH = 15;
defparam Ur0_n_2_pp.C0 = 15'd                   0;
defparam Ur0_n_2_pp.C1 = 15'd               28003;
defparam Ur0_n_2_pp.C2 = 15'd               31526;
defparam Ur0_n_2_pp.C3 = 15'd               26761;
defparam Ur0_n_2_pp.C4 = 15'd                2767;
defparam Ur0_n_2_pp.C5 = 15'd               30770;
defparam Ur0_n_2_pp.C6 = 15'd                1525;
defparam Ur0_n_2_pp.C7 = 15'd               29528;
defparam Ur0_n_2_pp.C8 = 15'd                7207;
defparam Ur0_n_2_pp.C9 = 15'd                2442;
defparam Ur0_n_2_pp.CA = 15'd                5965;
defparam Ur0_n_2_pp.CB = 15'd                1200;
defparam Ur0_n_2_pp.CC = 15'd                9974;
defparam Ur0_n_2_pp.CD = 15'd                5209;
defparam Ur0_n_2_pp.CE = 15'd                8732;
defparam Ur0_n_2_pp.CF = 15'd                3967;
assign lut_val_0_n_2_pp[18] = lut_val_0_n_2_pp[14];
assign lut_val_0_n_2_pp[17] = lut_val_0_n_2_pp[14];
assign lut_val_0_n_2_pp[16] = lut_val_0_n_2_pp[14];
assign lut_val_0_n_2_pp[15] = lut_val_0_n_2_pp[14];
wire [18:0] lut_val_0_n_3_pp;
rom_lut Ur0_n_3_pp (.addr_in( {sym_res_3_n[3],sym_res_2_n[3],sym_res_1_n[3],sym_res_0_n[3] } ), .data_out( lut_val_0_n_3_pp[14:0]) ) ;
 defparam Ur0_n_3_pp.DATA_WIDTH = 15;
defparam Ur0_n_3_pp.C0 = 15'd                   0;
defparam Ur0_n_3_pp.C1 = 15'd               28003;
defparam Ur0_n_3_pp.C2 = 15'd               31526;
defparam Ur0_n_3_pp.C3 = 15'd               26761;
defparam Ur0_n_3_pp.C4 = 15'd                2767;
defparam Ur0_n_3_pp.C5 = 15'd               30770;
defparam Ur0_n_3_pp.C6 = 15'd                1525;
defparam Ur0_n_3_pp.C7 = 15'd               29528;
defparam Ur0_n_3_pp.C8 = 15'd                7207;
defparam Ur0_n_3_pp.C9 = 15'd                2442;
defparam Ur0_n_3_pp.CA = 15'd                5965;
defparam Ur0_n_3_pp.CB = 15'd                1200;
defparam Ur0_n_3_pp.CC = 15'd                9974;
defparam Ur0_n_3_pp.CD = 15'd                5209;
defparam Ur0_n_3_pp.CE = 15'd                8732;
defparam Ur0_n_3_pp.CF = 15'd                3967;
assign lut_val_0_n_3_pp[18] = lut_val_0_n_3_pp[14];
assign lut_val_0_n_3_pp[17] = lut_val_0_n_3_pp[14];
assign lut_val_0_n_3_pp[16] = lut_val_0_n_3_pp[14];
assign lut_val_0_n_3_pp[15] = lut_val_0_n_3_pp[14];
wire [18:0] lut_val_0_n_4_pp;
rom_lut Ur0_n_4_pp (.addr_in( {sym_res_3_n[4],sym_res_2_n[4],sym_res_1_n[4],sym_res_0_n[4] } ), .data_out( lut_val_0_n_4_pp[14:0]) ) ;
 defparam Ur0_n_4_pp.DATA_WIDTH = 15;
defparam Ur0_n_4_pp.C0 = 15'd                   0;
defparam Ur0_n_4_pp.C1 = 15'd               28003;
defparam Ur0_n_4_pp.C2 = 15'd               31526;
defparam Ur0_n_4_pp.C3 = 15'd               26761;
defparam Ur0_n_4_pp.C4 = 15'd                2767;
defparam Ur0_n_4_pp.C5 = 15'd               30770;
defparam Ur0_n_4_pp.C6 = 15'd                1525;
defparam Ur0_n_4_pp.C7 = 15'd               29528;
defparam Ur0_n_4_pp.C8 = 15'd                7207;
defparam Ur0_n_4_pp.C9 = 15'd                2442;
defparam Ur0_n_4_pp.CA = 15'd                5965;
defparam Ur0_n_4_pp.CB = 15'd                1200;
defparam Ur0_n_4_pp.CC = 15'd                9974;
defparam Ur0_n_4_pp.CD = 15'd                5209;
defparam Ur0_n_4_pp.CE = 15'd                8732;
defparam Ur0_n_4_pp.CF = 15'd                3967;
assign lut_val_0_n_4_pp[18] = lut_val_0_n_4_pp[14];
assign lut_val_0_n_4_pp[17] = lut_val_0_n_4_pp[14];
assign lut_val_0_n_4_pp[16] = lut_val_0_n_4_pp[14];
assign lut_val_0_n_4_pp[15] = lut_val_0_n_4_pp[14];
wire [18:0] lut_val_0_n_5_pp;
rom_lut Ur0_n_5_pp (.addr_in( {sym_res_3_n[5],sym_res_2_n[5],sym_res_1_n[5],sym_res_0_n[5] } ), .data_out( lut_val_0_n_5_pp[14:0]) ) ;
 defparam Ur0_n_5_pp.DATA_WIDTH = 15;
defparam Ur0_n_5_pp.C0 = 15'd                   0;
defparam Ur0_n_5_pp.C1 = 15'd               28003;
defparam Ur0_n_5_pp.C2 = 15'd               31526;
defparam Ur0_n_5_pp.C3 = 15'd               26761;
defparam Ur0_n_5_pp.C4 = 15'd                2767;
defparam Ur0_n_5_pp.C5 = 15'd               30770;
defparam Ur0_n_5_pp.C6 = 15'd                1525;
defparam Ur0_n_5_pp.C7 = 15'd               29528;
defparam Ur0_n_5_pp.C8 = 15'd                7207;
defparam Ur0_n_5_pp.C9 = 15'd                2442;
defparam Ur0_n_5_pp.CA = 15'd                5965;
defparam Ur0_n_5_pp.CB = 15'd                1200;
defparam Ur0_n_5_pp.CC = 15'd                9974;
defparam Ur0_n_5_pp.CD = 15'd                5209;
defparam Ur0_n_5_pp.CE = 15'd                8732;
defparam Ur0_n_5_pp.CF = 15'd                3967;
assign lut_val_0_n_5_pp[18] = lut_val_0_n_5_pp[14];
assign lut_val_0_n_5_pp[17] = lut_val_0_n_5_pp[14];
assign lut_val_0_n_5_pp[16] = lut_val_0_n_5_pp[14];
assign lut_val_0_n_5_pp[15] = lut_val_0_n_5_pp[14];
wire [18:0] lut_val_0_n_6_pp;
rom_lut Ur0_n_6_pp (.addr_in( {sym_res_3_n[6],sym_res_2_n[6],sym_res_1_n[6],sym_res_0_n[6] } ), .data_out( lut_val_0_n_6_pp[14:0]) ) ;
 defparam Ur0_n_6_pp.DATA_WIDTH = 15;
defparam Ur0_n_6_pp.C0 = 15'd                   0;
defparam Ur0_n_6_pp.C1 = 15'd               28003;
defparam Ur0_n_6_pp.C2 = 15'd               31526;
defparam Ur0_n_6_pp.C3 = 15'd               26761;
defparam Ur0_n_6_pp.C4 = 15'd                2767;
defparam Ur0_n_6_pp.C5 = 15'd               30770;
defparam Ur0_n_6_pp.C6 = 15'd                1525;
defparam Ur0_n_6_pp.C7 = 15'd               29528;
defparam Ur0_n_6_pp.C8 = 15'd                7207;
defparam Ur0_n_6_pp.C9 = 15'd                2442;
defparam Ur0_n_6_pp.CA = 15'd                5965;
defparam Ur0_n_6_pp.CB = 15'd                1200;
defparam Ur0_n_6_pp.CC = 15'd                9974;
defparam Ur0_n_6_pp.CD = 15'd                5209;
defparam Ur0_n_6_pp.CE = 15'd                8732;
defparam Ur0_n_6_pp.CF = 15'd                3967;
assign lut_val_0_n_6_pp[18] = lut_val_0_n_6_pp[14];
assign lut_val_0_n_6_pp[17] = lut_val_0_n_6_pp[14];
assign lut_val_0_n_6_pp[16] = lut_val_0_n_6_pp[14];
assign lut_val_0_n_6_pp[15] = lut_val_0_n_6_pp[14];
wire [18:0] lut_val_0_n_7_pp;
rom_lut Ur0_n_7_pp (.addr_in( {sym_res_3_n[7],sym_res_2_n[7],sym_res_1_n[7],sym_res_0_n[7] } ), .data_out( lut_val_0_n_7_pp[14:0]) ) ;
 defparam Ur0_n_7_pp.DATA_WIDTH = 15;
defparam Ur0_n_7_pp.C0 = 15'd                   0;
defparam Ur0_n_7_pp.C1 = 15'd               28003;
defparam Ur0_n_7_pp.C2 = 15'd               31526;
defparam Ur0_n_7_pp.C3 = 15'd               26761;
defparam Ur0_n_7_pp.C4 = 15'd                2767;
defparam Ur0_n_7_pp.C5 = 15'd               30770;
defparam Ur0_n_7_pp.C6 = 15'd                1525;
defparam Ur0_n_7_pp.C7 = 15'd               29528;
defparam Ur0_n_7_pp.C8 = 15'd                7207;
defparam Ur0_n_7_pp.C9 = 15'd                2442;
defparam Ur0_n_7_pp.CA = 15'd                5965;
defparam Ur0_n_7_pp.CB = 15'd                1200;
defparam Ur0_n_7_pp.CC = 15'd                9974;
defparam Ur0_n_7_pp.CD = 15'd                5209;
defparam Ur0_n_7_pp.CE = 15'd                8732;
defparam Ur0_n_7_pp.CF = 15'd                3967;
assign lut_val_0_n_7_pp[18] = lut_val_0_n_7_pp[14];
assign lut_val_0_n_7_pp[17] = lut_val_0_n_7_pp[14];
assign lut_val_0_n_7_pp[16] = lut_val_0_n_7_pp[14];
assign lut_val_0_n_7_pp[15] = lut_val_0_n_7_pp[14];
wire [18:0] lut_val_0_n_8_pp;
rom_lut Ur0_n_8_pp (.addr_in( {sym_res_3_n[8],sym_res_2_n[8],sym_res_1_n[8],sym_res_0_n[8] } ), .data_out( lut_val_0_n_8_pp[14:0]) ) ;
 defparam Ur0_n_8_pp.DATA_WIDTH = 15;
defparam Ur0_n_8_pp.C0 = 15'd                   0;
defparam Ur0_n_8_pp.C1 = 15'd               28003;
defparam Ur0_n_8_pp.C2 = 15'd               31526;
defparam Ur0_n_8_pp.C3 = 15'd               26761;
defparam Ur0_n_8_pp.C4 = 15'd                2767;
defparam Ur0_n_8_pp.C5 = 15'd               30770;
defparam Ur0_n_8_pp.C6 = 15'd                1525;
defparam Ur0_n_8_pp.C7 = 15'd               29528;
defparam Ur0_n_8_pp.C8 = 15'd                7207;
defparam Ur0_n_8_pp.C9 = 15'd                2442;
defparam Ur0_n_8_pp.CA = 15'd                5965;
defparam Ur0_n_8_pp.CB = 15'd                1200;
defparam Ur0_n_8_pp.CC = 15'd                9974;
defparam Ur0_n_8_pp.CD = 15'd                5209;
defparam Ur0_n_8_pp.CE = 15'd                8732;
defparam Ur0_n_8_pp.CF = 15'd                3967;
assign lut_val_0_n_8_pp[18] = lut_val_0_n_8_pp[14];
assign lut_val_0_n_8_pp[17] = lut_val_0_n_8_pp[14];
assign lut_val_0_n_8_pp[16] = lut_val_0_n_8_pp[14];
assign lut_val_0_n_8_pp[15] = lut_val_0_n_8_pp[14];
wire [18:0] lut_val_0_n_9_pp;
rom_lut Ur0_n_9_pp (.addr_in( {sym_res_3_n[9],sym_res_2_n[9],sym_res_1_n[9],sym_res_0_n[9] } ), .data_out( lut_val_0_n_9_pp[14:0]) ) ;
 defparam Ur0_n_9_pp.DATA_WIDTH = 15;
defparam Ur0_n_9_pp.C0 = 15'd                   0;
defparam Ur0_n_9_pp.C1 = 15'd               28003;
defparam Ur0_n_9_pp.C2 = 15'd               31526;
defparam Ur0_n_9_pp.C3 = 15'd               26761;
defparam Ur0_n_9_pp.C4 = 15'd                2767;
defparam Ur0_n_9_pp.C5 = 15'd               30770;
defparam Ur0_n_9_pp.C6 = 15'd                1525;
defparam Ur0_n_9_pp.C7 = 15'd               29528;
defparam Ur0_n_9_pp.C8 = 15'd                7207;
defparam Ur0_n_9_pp.C9 = 15'd                2442;
defparam Ur0_n_9_pp.CA = 15'd                5965;
defparam Ur0_n_9_pp.CB = 15'd                1200;
defparam Ur0_n_9_pp.CC = 15'd                9974;
defparam Ur0_n_9_pp.CD = 15'd                5209;
defparam Ur0_n_9_pp.CE = 15'd                8732;
defparam Ur0_n_9_pp.CF = 15'd                3967;
assign lut_val_0_n_9_pp[18] = lut_val_0_n_9_pp[14];
assign lut_val_0_n_9_pp[17] = lut_val_0_n_9_pp[14];
assign lut_val_0_n_9_pp[16] = lut_val_0_n_9_pp[14];
assign lut_val_0_n_9_pp[15] = lut_val_0_n_9_pp[14];
wire [18:0] lut_val_0_n_10_pp;
rom_lut Ur0_n_10_pp (.addr_in( {sym_res_3_n[10],sym_res_2_n[10],sym_res_1_n[10],sym_res_0_n[10] } ), .data_out( lut_val_0_n_10_pp[14:0]) ) ;
 defparam Ur0_n_10_pp.DATA_WIDTH = 15;
defparam Ur0_n_10_pp.C0 = 15'd                   0;
defparam Ur0_n_10_pp.C1 = 15'd               28003;
defparam Ur0_n_10_pp.C2 = 15'd               31526;
defparam Ur0_n_10_pp.C3 = 15'd               26761;
defparam Ur0_n_10_pp.C4 = 15'd                2767;
defparam Ur0_n_10_pp.C5 = 15'd               30770;
defparam Ur0_n_10_pp.C6 = 15'd                1525;
defparam Ur0_n_10_pp.C7 = 15'd               29528;
defparam Ur0_n_10_pp.C8 = 15'd                7207;
defparam Ur0_n_10_pp.C9 = 15'd                2442;
defparam Ur0_n_10_pp.CA = 15'd                5965;
defparam Ur0_n_10_pp.CB = 15'd                1200;
defparam Ur0_n_10_pp.CC = 15'd                9974;
defparam Ur0_n_10_pp.CD = 15'd                5209;
defparam Ur0_n_10_pp.CE = 15'd                8732;
defparam Ur0_n_10_pp.CF = 15'd                3967;
assign lut_val_0_n_10_pp[18] = lut_val_0_n_10_pp[14];
assign lut_val_0_n_10_pp[17] = lut_val_0_n_10_pp[14];
assign lut_val_0_n_10_pp[16] = lut_val_0_n_10_pp[14];
assign lut_val_0_n_10_pp[15] = lut_val_0_n_10_pp[14];
wire [18:0] lut_val_0_n_11_pp;
rom_lut Ur0_n_11_pp (.addr_in( {sym_res_3_n[11],sym_res_2_n[11],sym_res_1_n[11],sym_res_0_n[11] } ), .data_out( lut_val_0_n_11_pp[14:0]) ) ;
 defparam Ur0_n_11_pp.DATA_WIDTH = 15;
defparam Ur0_n_11_pp.C0 = 15'd                   0;
defparam Ur0_n_11_pp.C1 = 15'd               28003;
defparam Ur0_n_11_pp.C2 = 15'd               31526;
defparam Ur0_n_11_pp.C3 = 15'd               26761;
defparam Ur0_n_11_pp.C4 = 15'd                2767;
defparam Ur0_n_11_pp.C5 = 15'd               30770;
defparam Ur0_n_11_pp.C6 = 15'd                1525;
defparam Ur0_n_11_pp.C7 = 15'd               29528;
defparam Ur0_n_11_pp.C8 = 15'd                7207;
defparam Ur0_n_11_pp.C9 = 15'd                2442;
defparam Ur0_n_11_pp.CA = 15'd                5965;
defparam Ur0_n_11_pp.CB = 15'd                1200;
defparam Ur0_n_11_pp.CC = 15'd                9974;
defparam Ur0_n_11_pp.CD = 15'd                5209;
defparam Ur0_n_11_pp.CE = 15'd                8732;
defparam Ur0_n_11_pp.CF = 15'd                3967;
assign lut_val_0_n_11_pp[18] = lut_val_0_n_11_pp[14];
assign lut_val_0_n_11_pp[17] = lut_val_0_n_11_pp[14];
assign lut_val_0_n_11_pp[16] = lut_val_0_n_11_pp[14];
assign lut_val_0_n_11_pp[15] = lut_val_0_n_11_pp[14];
wire [18:0] lut_val_0_n_12_pp;
rom_lut Ur0_n_12_pp (.addr_in( {sym_res_3_n[12],sym_res_2_n[12],sym_res_1_n[12],sym_res_0_n[12] } ), .data_out( lut_val_0_n_12_pp[14:0]) ) ;
 defparam Ur0_n_12_pp.DATA_WIDTH = 15;
defparam Ur0_n_12_pp.C0 = 15'd                   0;
defparam Ur0_n_12_pp.C1 = 15'd               28003;
defparam Ur0_n_12_pp.C2 = 15'd               31526;
defparam Ur0_n_12_pp.C3 = 15'd               26761;
defparam Ur0_n_12_pp.C4 = 15'd                2767;
defparam Ur0_n_12_pp.C5 = 15'd               30770;
defparam Ur0_n_12_pp.C6 = 15'd                1525;
defparam Ur0_n_12_pp.C7 = 15'd               29528;
defparam Ur0_n_12_pp.C8 = 15'd                7207;
defparam Ur0_n_12_pp.C9 = 15'd                2442;
defparam Ur0_n_12_pp.CA = 15'd                5965;
defparam Ur0_n_12_pp.CB = 15'd                1200;
defparam Ur0_n_12_pp.CC = 15'd                9974;
defparam Ur0_n_12_pp.CD = 15'd                5209;
defparam Ur0_n_12_pp.CE = 15'd                8732;
defparam Ur0_n_12_pp.CF = 15'd                3967;
assign lut_val_0_n_12_pp[18] = lut_val_0_n_12_pp[14];
assign lut_val_0_n_12_pp[17] = lut_val_0_n_12_pp[14];
assign lut_val_0_n_12_pp[16] = lut_val_0_n_12_pp[14];
assign lut_val_0_n_12_pp[15] = lut_val_0_n_12_pp[14];
wire [18:0] lut_val_0_n_13_pp;
rom_lut Ur0_n_13_pp (.addr_in( {sym_res_3_n[13],sym_res_2_n[13],sym_res_1_n[13],sym_res_0_n[13] } ), .data_out( lut_val_0_n_13_pp[14:0]) ) ;
 defparam Ur0_n_13_pp.DATA_WIDTH = 15;
defparam Ur0_n_13_pp.C0 = 15'd                   0;
defparam Ur0_n_13_pp.C1 = 15'd               28003;
defparam Ur0_n_13_pp.C2 = 15'd               31526;
defparam Ur0_n_13_pp.C3 = 15'd               26761;
defparam Ur0_n_13_pp.C4 = 15'd                2767;
defparam Ur0_n_13_pp.C5 = 15'd               30770;
defparam Ur0_n_13_pp.C6 = 15'd                1525;
defparam Ur0_n_13_pp.C7 = 15'd               29528;
defparam Ur0_n_13_pp.C8 = 15'd                7207;
defparam Ur0_n_13_pp.C9 = 15'd                2442;
defparam Ur0_n_13_pp.CA = 15'd                5965;
defparam Ur0_n_13_pp.CB = 15'd                1200;
defparam Ur0_n_13_pp.CC = 15'd                9974;
defparam Ur0_n_13_pp.CD = 15'd                5209;
defparam Ur0_n_13_pp.CE = 15'd                8732;
defparam Ur0_n_13_pp.CF = 15'd                3967;
assign lut_val_0_n_13_pp[18] = lut_val_0_n_13_pp[14];
assign lut_val_0_n_13_pp[17] = lut_val_0_n_13_pp[14];
assign lut_val_0_n_13_pp[16] = lut_val_0_n_13_pp[14];
assign lut_val_0_n_13_pp[15] = lut_val_0_n_13_pp[14];
wire [18:0] lut_val_0_n_14_pp;
rom_lut Ur0_n_14_pp (.addr_in( {sym_res_3_n[14],sym_res_2_n[14],sym_res_1_n[14],sym_res_0_n[14] } ), .data_out( lut_val_0_n_14_pp[14:0]) ) ;
 defparam Ur0_n_14_pp.DATA_WIDTH = 15;
defparam Ur0_n_14_pp.C0 = 15'd                   0;
defparam Ur0_n_14_pp.C1 = 15'd               28003;
defparam Ur0_n_14_pp.C2 = 15'd               31526;
defparam Ur0_n_14_pp.C3 = 15'd               26761;
defparam Ur0_n_14_pp.C4 = 15'd                2767;
defparam Ur0_n_14_pp.C5 = 15'd               30770;
defparam Ur0_n_14_pp.C6 = 15'd                1525;
defparam Ur0_n_14_pp.C7 = 15'd               29528;
defparam Ur0_n_14_pp.C8 = 15'd                7207;
defparam Ur0_n_14_pp.C9 = 15'd                2442;
defparam Ur0_n_14_pp.CA = 15'd                5965;
defparam Ur0_n_14_pp.CB = 15'd                1200;
defparam Ur0_n_14_pp.CC = 15'd                9974;
defparam Ur0_n_14_pp.CD = 15'd                5209;
defparam Ur0_n_14_pp.CE = 15'd                8732;
defparam Ur0_n_14_pp.CF = 15'd                3967;
assign lut_val_0_n_14_pp[18] = lut_val_0_n_14_pp[14];
assign lut_val_0_n_14_pp[17] = lut_val_0_n_14_pp[14];
assign lut_val_0_n_14_pp[16] = lut_val_0_n_14_pp[14];
assign lut_val_0_n_14_pp[15] = lut_val_0_n_14_pp[14];
wire [18:0] lut_val_1_n_0_pp;
rom_lut Ur1_n_0_pp (.addr_in( {sym_res_7_n[0],sym_res_6_n[0],sym_res_5_n[0],sym_res_4_n[0] } ), .data_out( lut_val_1_n_0_pp[17:0]) ) ;
 defparam Ur1_n_0_pp.DATA_WIDTH = 18;
defparam Ur1_n_0_pp.C0 = 18'd                   0;
defparam Ur1_n_0_pp.C1 = 18'd               12009;
defparam Ur1_n_0_pp.C2 = 18'd               17091;
defparam Ur1_n_0_pp.C3 = 18'd               29100;
defparam Ur1_n_0_pp.C4 = 18'd               22365;
defparam Ur1_n_0_pp.C5 = 18'd               34374;
defparam Ur1_n_0_pp.C6 = 18'd               39456;
defparam Ur1_n_0_pp.C7 = 18'd               51465;
defparam Ur1_n_0_pp.C8 = 18'd               27735;
defparam Ur1_n_0_pp.C9 = 18'd               39744;
defparam Ur1_n_0_pp.CA = 18'd               44826;
defparam Ur1_n_0_pp.CB = 18'd               56835;
defparam Ur1_n_0_pp.CC = 18'd               50100;
defparam Ur1_n_0_pp.CD = 18'd               62109;
defparam Ur1_n_0_pp.CE = 18'd               67191;
defparam Ur1_n_0_pp.CF = 18'd               79200;
assign lut_val_1_n_0_pp[18] = lut_val_1_n_0_pp[17];
wire [18:0] lut_val_1_n_1_pp;
rom_lut Ur1_n_1_pp (.addr_in( {sym_res_7_n[1],sym_res_6_n[1],sym_res_5_n[1],sym_res_4_n[1] } ), .data_out( lut_val_1_n_1_pp[17:0]) ) ;
 defparam Ur1_n_1_pp.DATA_WIDTH = 18;
defparam Ur1_n_1_pp.C0 = 18'd                   0;
defparam Ur1_n_1_pp.C1 = 18'd               12009;
defparam Ur1_n_1_pp.C2 = 18'd               17091;
defparam Ur1_n_1_pp.C3 = 18'd               29100;
defparam Ur1_n_1_pp.C4 = 18'd               22365;
defparam Ur1_n_1_pp.C5 = 18'd               34374;
defparam Ur1_n_1_pp.C6 = 18'd               39456;
defparam Ur1_n_1_pp.C7 = 18'd               51465;
defparam Ur1_n_1_pp.C8 = 18'd               27735;
defparam Ur1_n_1_pp.C9 = 18'd               39744;
defparam Ur1_n_1_pp.CA = 18'd               44826;
defparam Ur1_n_1_pp.CB = 18'd               56835;
defparam Ur1_n_1_pp.CC = 18'd               50100;
defparam Ur1_n_1_pp.CD = 18'd               62109;
defparam Ur1_n_1_pp.CE = 18'd               67191;
defparam Ur1_n_1_pp.CF = 18'd               79200;
assign lut_val_1_n_1_pp[18] = lut_val_1_n_1_pp[17];
wire [18:0] lut_val_1_n_2_pp;
rom_lut Ur1_n_2_pp (.addr_in( {sym_res_7_n[2],sym_res_6_n[2],sym_res_5_n[2],sym_res_4_n[2] } ), .data_out( lut_val_1_n_2_pp[17:0]) ) ;
 defparam Ur1_n_2_pp.DATA_WIDTH = 18;
defparam Ur1_n_2_pp.C0 = 18'd                   0;
defparam Ur1_n_2_pp.C1 = 18'd               12009;
defparam Ur1_n_2_pp.C2 = 18'd               17091;
defparam Ur1_n_2_pp.C3 = 18'd               29100;
defparam Ur1_n_2_pp.C4 = 18'd               22365;
defparam Ur1_n_2_pp.C5 = 18'd               34374;
defparam Ur1_n_2_pp.C6 = 18'd               39456;
defparam Ur1_n_2_pp.C7 = 18'd               51465;
defparam Ur1_n_2_pp.C8 = 18'd               27735;
defparam Ur1_n_2_pp.C9 = 18'd               39744;
defparam Ur1_n_2_pp.CA = 18'd               44826;
defparam Ur1_n_2_pp.CB = 18'd               56835;
defparam Ur1_n_2_pp.CC = 18'd               50100;
defparam Ur1_n_2_pp.CD = 18'd               62109;
defparam Ur1_n_2_pp.CE = 18'd               67191;
defparam Ur1_n_2_pp.CF = 18'd               79200;
assign lut_val_1_n_2_pp[18] = lut_val_1_n_2_pp[17];
wire [18:0] lut_val_1_n_3_pp;
rom_lut Ur1_n_3_pp (.addr_in( {sym_res_7_n[3],sym_res_6_n[3],sym_res_5_n[3],sym_res_4_n[3] } ), .data_out( lut_val_1_n_3_pp[17:0]) ) ;
 defparam Ur1_n_3_pp.DATA_WIDTH = 18;
defparam Ur1_n_3_pp.C0 = 18'd                   0;
defparam Ur1_n_3_pp.C1 = 18'd               12009;
defparam Ur1_n_3_pp.C2 = 18'd               17091;
defparam Ur1_n_3_pp.C3 = 18'd               29100;
defparam Ur1_n_3_pp.C4 = 18'd               22365;
defparam Ur1_n_3_pp.C5 = 18'd               34374;
defparam Ur1_n_3_pp.C6 = 18'd               39456;
defparam Ur1_n_3_pp.C7 = 18'd               51465;
defparam Ur1_n_3_pp.C8 = 18'd               27735;
defparam Ur1_n_3_pp.C9 = 18'd               39744;
defparam Ur1_n_3_pp.CA = 18'd               44826;
defparam Ur1_n_3_pp.CB = 18'd               56835;
defparam Ur1_n_3_pp.CC = 18'd               50100;
defparam Ur1_n_3_pp.CD = 18'd               62109;
defparam Ur1_n_3_pp.CE = 18'd               67191;
defparam Ur1_n_3_pp.CF = 18'd               79200;
assign lut_val_1_n_3_pp[18] = lut_val_1_n_3_pp[17];
wire [18:0] lut_val_1_n_4_pp;
rom_lut Ur1_n_4_pp (.addr_in( {sym_res_7_n[4],sym_res_6_n[4],sym_res_5_n[4],sym_res_4_n[4] } ), .data_out( lut_val_1_n_4_pp[17:0]) ) ;
 defparam Ur1_n_4_pp.DATA_WIDTH = 18;
defparam Ur1_n_4_pp.C0 = 18'd                   0;
defparam Ur1_n_4_pp.C1 = 18'd               12009;
defparam Ur1_n_4_pp.C2 = 18'd               17091;
defparam Ur1_n_4_pp.C3 = 18'd               29100;
defparam Ur1_n_4_pp.C4 = 18'd               22365;
defparam Ur1_n_4_pp.C5 = 18'd               34374;
defparam Ur1_n_4_pp.C6 = 18'd               39456;
defparam Ur1_n_4_pp.C7 = 18'd               51465;
defparam Ur1_n_4_pp.C8 = 18'd               27735;
defparam Ur1_n_4_pp.C9 = 18'd               39744;
defparam Ur1_n_4_pp.CA = 18'd               44826;
defparam Ur1_n_4_pp.CB = 18'd               56835;
defparam Ur1_n_4_pp.CC = 18'd               50100;
defparam Ur1_n_4_pp.CD = 18'd               62109;
defparam Ur1_n_4_pp.CE = 18'd               67191;
defparam Ur1_n_4_pp.CF = 18'd               79200;
assign lut_val_1_n_4_pp[18] = lut_val_1_n_4_pp[17];
wire [18:0] lut_val_1_n_5_pp;
rom_lut Ur1_n_5_pp (.addr_in( {sym_res_7_n[5],sym_res_6_n[5],sym_res_5_n[5],sym_res_4_n[5] } ), .data_out( lut_val_1_n_5_pp[17:0]) ) ;
 defparam Ur1_n_5_pp.DATA_WIDTH = 18;
defparam Ur1_n_5_pp.C0 = 18'd                   0;
defparam Ur1_n_5_pp.C1 = 18'd               12009;
defparam Ur1_n_5_pp.C2 = 18'd               17091;
defparam Ur1_n_5_pp.C3 = 18'd               29100;
defparam Ur1_n_5_pp.C4 = 18'd               22365;
defparam Ur1_n_5_pp.C5 = 18'd               34374;
defparam Ur1_n_5_pp.C6 = 18'd               39456;
defparam Ur1_n_5_pp.C7 = 18'd               51465;
defparam Ur1_n_5_pp.C8 = 18'd               27735;
defparam Ur1_n_5_pp.C9 = 18'd               39744;
defparam Ur1_n_5_pp.CA = 18'd               44826;
defparam Ur1_n_5_pp.CB = 18'd               56835;
defparam Ur1_n_5_pp.CC = 18'd               50100;
defparam Ur1_n_5_pp.CD = 18'd               62109;
defparam Ur1_n_5_pp.CE = 18'd               67191;
defparam Ur1_n_5_pp.CF = 18'd               79200;
assign lut_val_1_n_5_pp[18] = lut_val_1_n_5_pp[17];
wire [18:0] lut_val_1_n_6_pp;
rom_lut Ur1_n_6_pp (.addr_in( {sym_res_7_n[6],sym_res_6_n[6],sym_res_5_n[6],sym_res_4_n[6] } ), .data_out( lut_val_1_n_6_pp[17:0]) ) ;
 defparam Ur1_n_6_pp.DATA_WIDTH = 18;
defparam Ur1_n_6_pp.C0 = 18'd                   0;
defparam Ur1_n_6_pp.C1 = 18'd               12009;
defparam Ur1_n_6_pp.C2 = 18'd               17091;
defparam Ur1_n_6_pp.C3 = 18'd               29100;
defparam Ur1_n_6_pp.C4 = 18'd               22365;
defparam Ur1_n_6_pp.C5 = 18'd               34374;
defparam Ur1_n_6_pp.C6 = 18'd               39456;
defparam Ur1_n_6_pp.C7 = 18'd               51465;
defparam Ur1_n_6_pp.C8 = 18'd               27735;
defparam Ur1_n_6_pp.C9 = 18'd               39744;
defparam Ur1_n_6_pp.CA = 18'd               44826;
defparam Ur1_n_6_pp.CB = 18'd               56835;
defparam Ur1_n_6_pp.CC = 18'd               50100;
defparam Ur1_n_6_pp.CD = 18'd               62109;
defparam Ur1_n_6_pp.CE = 18'd               67191;
defparam Ur1_n_6_pp.CF = 18'd               79200;
assign lut_val_1_n_6_pp[18] = lut_val_1_n_6_pp[17];
wire [18:0] lut_val_1_n_7_pp;
rom_lut Ur1_n_7_pp (.addr_in( {sym_res_7_n[7],sym_res_6_n[7],sym_res_5_n[7],sym_res_4_n[7] } ), .data_out( lut_val_1_n_7_pp[17:0]) ) ;
 defparam Ur1_n_7_pp.DATA_WIDTH = 18;
defparam Ur1_n_7_pp.C0 = 18'd                   0;
defparam Ur1_n_7_pp.C1 = 18'd               12009;
defparam Ur1_n_7_pp.C2 = 18'd               17091;
defparam Ur1_n_7_pp.C3 = 18'd               29100;
defparam Ur1_n_7_pp.C4 = 18'd               22365;
defparam Ur1_n_7_pp.C5 = 18'd               34374;
defparam Ur1_n_7_pp.C6 = 18'd               39456;
defparam Ur1_n_7_pp.C7 = 18'd               51465;
defparam Ur1_n_7_pp.C8 = 18'd               27735;
defparam Ur1_n_7_pp.C9 = 18'd               39744;
defparam Ur1_n_7_pp.CA = 18'd               44826;
defparam Ur1_n_7_pp.CB = 18'd               56835;
defparam Ur1_n_7_pp.CC = 18'd               50100;
defparam Ur1_n_7_pp.CD = 18'd               62109;
defparam Ur1_n_7_pp.CE = 18'd               67191;
defparam Ur1_n_7_pp.CF = 18'd               79200;
assign lut_val_1_n_7_pp[18] = lut_val_1_n_7_pp[17];
wire [18:0] lut_val_1_n_8_pp;
rom_lut Ur1_n_8_pp (.addr_in( {sym_res_7_n[8],sym_res_6_n[8],sym_res_5_n[8],sym_res_4_n[8] } ), .data_out( lut_val_1_n_8_pp[17:0]) ) ;
 defparam Ur1_n_8_pp.DATA_WIDTH = 18;
defparam Ur1_n_8_pp.C0 = 18'd                   0;
defparam Ur1_n_8_pp.C1 = 18'd               12009;
defparam Ur1_n_8_pp.C2 = 18'd               17091;
defparam Ur1_n_8_pp.C3 = 18'd               29100;
defparam Ur1_n_8_pp.C4 = 18'd               22365;
defparam Ur1_n_8_pp.C5 = 18'd               34374;
defparam Ur1_n_8_pp.C6 = 18'd               39456;
defparam Ur1_n_8_pp.C7 = 18'd               51465;
defparam Ur1_n_8_pp.C8 = 18'd               27735;
defparam Ur1_n_8_pp.C9 = 18'd               39744;
defparam Ur1_n_8_pp.CA = 18'd               44826;
defparam Ur1_n_8_pp.CB = 18'd               56835;
defparam Ur1_n_8_pp.CC = 18'd               50100;
defparam Ur1_n_8_pp.CD = 18'd               62109;
defparam Ur1_n_8_pp.CE = 18'd               67191;
defparam Ur1_n_8_pp.CF = 18'd               79200;
assign lut_val_1_n_8_pp[18] = lut_val_1_n_8_pp[17];
wire [18:0] lut_val_1_n_9_pp;
rom_lut Ur1_n_9_pp (.addr_in( {sym_res_7_n[9],sym_res_6_n[9],sym_res_5_n[9],sym_res_4_n[9] } ), .data_out( lut_val_1_n_9_pp[17:0]) ) ;
 defparam Ur1_n_9_pp.DATA_WIDTH = 18;
defparam Ur1_n_9_pp.C0 = 18'd                   0;
defparam Ur1_n_9_pp.C1 = 18'd               12009;
defparam Ur1_n_9_pp.C2 = 18'd               17091;
defparam Ur1_n_9_pp.C3 = 18'd               29100;
defparam Ur1_n_9_pp.C4 = 18'd               22365;
defparam Ur1_n_9_pp.C5 = 18'd               34374;
defparam Ur1_n_9_pp.C6 = 18'd               39456;
defparam Ur1_n_9_pp.C7 = 18'd               51465;
defparam Ur1_n_9_pp.C8 = 18'd               27735;
defparam Ur1_n_9_pp.C9 = 18'd               39744;
defparam Ur1_n_9_pp.CA = 18'd               44826;
defparam Ur1_n_9_pp.CB = 18'd               56835;
defparam Ur1_n_9_pp.CC = 18'd               50100;
defparam Ur1_n_9_pp.CD = 18'd               62109;
defparam Ur1_n_9_pp.CE = 18'd               67191;
defparam Ur1_n_9_pp.CF = 18'd               79200;
assign lut_val_1_n_9_pp[18] = lut_val_1_n_9_pp[17];
wire [18:0] lut_val_1_n_10_pp;
rom_lut Ur1_n_10_pp (.addr_in( {sym_res_7_n[10],sym_res_6_n[10],sym_res_5_n[10],sym_res_4_n[10] } ), .data_out( lut_val_1_n_10_pp[17:0]) ) ;
 defparam Ur1_n_10_pp.DATA_WIDTH = 18;
defparam Ur1_n_10_pp.C0 = 18'd                   0;
defparam Ur1_n_10_pp.C1 = 18'd               12009;
defparam Ur1_n_10_pp.C2 = 18'd               17091;
defparam Ur1_n_10_pp.C3 = 18'd               29100;
defparam Ur1_n_10_pp.C4 = 18'd               22365;
defparam Ur1_n_10_pp.C5 = 18'd               34374;
defparam Ur1_n_10_pp.C6 = 18'd               39456;
defparam Ur1_n_10_pp.C7 = 18'd               51465;
defparam Ur1_n_10_pp.C8 = 18'd               27735;
defparam Ur1_n_10_pp.C9 = 18'd               39744;
defparam Ur1_n_10_pp.CA = 18'd               44826;
defparam Ur1_n_10_pp.CB = 18'd               56835;
defparam Ur1_n_10_pp.CC = 18'd               50100;
defparam Ur1_n_10_pp.CD = 18'd               62109;
defparam Ur1_n_10_pp.CE = 18'd               67191;
defparam Ur1_n_10_pp.CF = 18'd               79200;
assign lut_val_1_n_10_pp[18] = lut_val_1_n_10_pp[17];
wire [18:0] lut_val_1_n_11_pp;
rom_lut Ur1_n_11_pp (.addr_in( {sym_res_7_n[11],sym_res_6_n[11],sym_res_5_n[11],sym_res_4_n[11] } ), .data_out( lut_val_1_n_11_pp[17:0]) ) ;
 defparam Ur1_n_11_pp.DATA_WIDTH = 18;
defparam Ur1_n_11_pp.C0 = 18'd                   0;
defparam Ur1_n_11_pp.C1 = 18'd               12009;
defparam Ur1_n_11_pp.C2 = 18'd               17091;
defparam Ur1_n_11_pp.C3 = 18'd               29100;
defparam Ur1_n_11_pp.C4 = 18'd               22365;
defparam Ur1_n_11_pp.C5 = 18'd               34374;
defparam Ur1_n_11_pp.C6 = 18'd               39456;
defparam Ur1_n_11_pp.C7 = 18'd               51465;
defparam Ur1_n_11_pp.C8 = 18'd               27735;
defparam Ur1_n_11_pp.C9 = 18'd               39744;
defparam Ur1_n_11_pp.CA = 18'd               44826;
defparam Ur1_n_11_pp.CB = 18'd               56835;
defparam Ur1_n_11_pp.CC = 18'd               50100;
defparam Ur1_n_11_pp.CD = 18'd               62109;
defparam Ur1_n_11_pp.CE = 18'd               67191;
defparam Ur1_n_11_pp.CF = 18'd               79200;
assign lut_val_1_n_11_pp[18] = lut_val_1_n_11_pp[17];
wire [18:0] lut_val_1_n_12_pp;
rom_lut Ur1_n_12_pp (.addr_in( {sym_res_7_n[12],sym_res_6_n[12],sym_res_5_n[12],sym_res_4_n[12] } ), .data_out( lut_val_1_n_12_pp[17:0]) ) ;
 defparam Ur1_n_12_pp.DATA_WIDTH = 18;
defparam Ur1_n_12_pp.C0 = 18'd                   0;
defparam Ur1_n_12_pp.C1 = 18'd               12009;
defparam Ur1_n_12_pp.C2 = 18'd               17091;
defparam Ur1_n_12_pp.C3 = 18'd               29100;
defparam Ur1_n_12_pp.C4 = 18'd               22365;
defparam Ur1_n_12_pp.C5 = 18'd               34374;
defparam Ur1_n_12_pp.C6 = 18'd               39456;
defparam Ur1_n_12_pp.C7 = 18'd               51465;
defparam Ur1_n_12_pp.C8 = 18'd               27735;
defparam Ur1_n_12_pp.C9 = 18'd               39744;
defparam Ur1_n_12_pp.CA = 18'd               44826;
defparam Ur1_n_12_pp.CB = 18'd               56835;
defparam Ur1_n_12_pp.CC = 18'd               50100;
defparam Ur1_n_12_pp.CD = 18'd               62109;
defparam Ur1_n_12_pp.CE = 18'd               67191;
defparam Ur1_n_12_pp.CF = 18'd               79200;
assign lut_val_1_n_12_pp[18] = lut_val_1_n_12_pp[17];
wire [18:0] lut_val_1_n_13_pp;
rom_lut Ur1_n_13_pp (.addr_in( {sym_res_7_n[13],sym_res_6_n[13],sym_res_5_n[13],sym_res_4_n[13] } ), .data_out( lut_val_1_n_13_pp[17:0]) ) ;
 defparam Ur1_n_13_pp.DATA_WIDTH = 18;
defparam Ur1_n_13_pp.C0 = 18'd                   0;
defparam Ur1_n_13_pp.C1 = 18'd               12009;
defparam Ur1_n_13_pp.C2 = 18'd               17091;
defparam Ur1_n_13_pp.C3 = 18'd               29100;
defparam Ur1_n_13_pp.C4 = 18'd               22365;
defparam Ur1_n_13_pp.C5 = 18'd               34374;
defparam Ur1_n_13_pp.C6 = 18'd               39456;
defparam Ur1_n_13_pp.C7 = 18'd               51465;
defparam Ur1_n_13_pp.C8 = 18'd               27735;
defparam Ur1_n_13_pp.C9 = 18'd               39744;
defparam Ur1_n_13_pp.CA = 18'd               44826;
defparam Ur1_n_13_pp.CB = 18'd               56835;
defparam Ur1_n_13_pp.CC = 18'd               50100;
defparam Ur1_n_13_pp.CD = 18'd               62109;
defparam Ur1_n_13_pp.CE = 18'd               67191;
defparam Ur1_n_13_pp.CF = 18'd               79200;
assign lut_val_1_n_13_pp[18] = lut_val_1_n_13_pp[17];
wire [18:0] lut_val_1_n_14_pp;
rom_lut Ur1_n_14_pp (.addr_in( {sym_res_7_n[14],sym_res_6_n[14],sym_res_5_n[14],sym_res_4_n[14] } ), .data_out( lut_val_1_n_14_pp[17:0]) ) ;
 defparam Ur1_n_14_pp.DATA_WIDTH = 18;
defparam Ur1_n_14_pp.C0 = 18'd                   0;
defparam Ur1_n_14_pp.C1 = 18'd               12009;
defparam Ur1_n_14_pp.C2 = 18'd               17091;
defparam Ur1_n_14_pp.C3 = 18'd               29100;
defparam Ur1_n_14_pp.C4 = 18'd               22365;
defparam Ur1_n_14_pp.C5 = 18'd               34374;
defparam Ur1_n_14_pp.C6 = 18'd               39456;
defparam Ur1_n_14_pp.C7 = 18'd               51465;
defparam Ur1_n_14_pp.C8 = 18'd               27735;
defparam Ur1_n_14_pp.C9 = 18'd               39744;
defparam Ur1_n_14_pp.CA = 18'd               44826;
defparam Ur1_n_14_pp.CB = 18'd               56835;
defparam Ur1_n_14_pp.CC = 18'd               50100;
defparam Ur1_n_14_pp.CD = 18'd               62109;
defparam Ur1_n_14_pp.CE = 18'd               67191;
defparam Ur1_n_14_pp.CF = 18'd               79200;
assign lut_val_1_n_14_pp[18] = lut_val_1_n_14_pp[17];
wire [18:0] lut_val_2_n_0_pp;
rom_lut Ur2_n_0_pp (.addr_in( {sym_res_11_n[0],sym_res_10_n[0],sym_res_9_n[0],sym_res_8_n[0] } ), .data_out( lut_val_2_n_0_pp[18:0]) ) ;
 defparam Ur2_n_0_pp.DATA_WIDTH = 19;
defparam Ur2_n_0_pp.C0 = 19'd                   0;
defparam Ur2_n_0_pp.C1 = 19'd               33100;
defparam Ur2_n_0_pp.C2 = 19'd               38356;
defparam Ur2_n_0_pp.C3 = 19'd               71456;
defparam Ur2_n_0_pp.C4 = 19'd               43398;
defparam Ur2_n_0_pp.C5 = 19'd               76498;
defparam Ur2_n_0_pp.C6 = 19'd               81754;
defparam Ur2_n_0_pp.C7 = 19'd              114854;
defparam Ur2_n_0_pp.C8 = 19'd               48127;
defparam Ur2_n_0_pp.C9 = 19'd               81227;
defparam Ur2_n_0_pp.CA = 19'd               86483;
defparam Ur2_n_0_pp.CB = 19'd              119583;
defparam Ur2_n_0_pp.CC = 19'd               91525;
defparam Ur2_n_0_pp.CD = 19'd              124625;
defparam Ur2_n_0_pp.CE = 19'd              129881;
defparam Ur2_n_0_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_1_pp;
rom_lut Ur2_n_1_pp (.addr_in( {sym_res_11_n[1],sym_res_10_n[1],sym_res_9_n[1],sym_res_8_n[1] } ), .data_out( lut_val_2_n_1_pp[18:0]) ) ;
 defparam Ur2_n_1_pp.DATA_WIDTH = 19;
defparam Ur2_n_1_pp.C0 = 19'd                   0;
defparam Ur2_n_1_pp.C1 = 19'd               33100;
defparam Ur2_n_1_pp.C2 = 19'd               38356;
defparam Ur2_n_1_pp.C3 = 19'd               71456;
defparam Ur2_n_1_pp.C4 = 19'd               43398;
defparam Ur2_n_1_pp.C5 = 19'd               76498;
defparam Ur2_n_1_pp.C6 = 19'd               81754;
defparam Ur2_n_1_pp.C7 = 19'd              114854;
defparam Ur2_n_1_pp.C8 = 19'd               48127;
defparam Ur2_n_1_pp.C9 = 19'd               81227;
defparam Ur2_n_1_pp.CA = 19'd               86483;
defparam Ur2_n_1_pp.CB = 19'd              119583;
defparam Ur2_n_1_pp.CC = 19'd               91525;
defparam Ur2_n_1_pp.CD = 19'd              124625;
defparam Ur2_n_1_pp.CE = 19'd              129881;
defparam Ur2_n_1_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_2_pp;
rom_lut Ur2_n_2_pp (.addr_in( {sym_res_11_n[2],sym_res_10_n[2],sym_res_9_n[2],sym_res_8_n[2] } ), .data_out( lut_val_2_n_2_pp[18:0]) ) ;
 defparam Ur2_n_2_pp.DATA_WIDTH = 19;
defparam Ur2_n_2_pp.C0 = 19'd                   0;
defparam Ur2_n_2_pp.C1 = 19'd               33100;
defparam Ur2_n_2_pp.C2 = 19'd               38356;
defparam Ur2_n_2_pp.C3 = 19'd               71456;
defparam Ur2_n_2_pp.C4 = 19'd               43398;
defparam Ur2_n_2_pp.C5 = 19'd               76498;
defparam Ur2_n_2_pp.C6 = 19'd               81754;
defparam Ur2_n_2_pp.C7 = 19'd              114854;
defparam Ur2_n_2_pp.C8 = 19'd               48127;
defparam Ur2_n_2_pp.C9 = 19'd               81227;
defparam Ur2_n_2_pp.CA = 19'd               86483;
defparam Ur2_n_2_pp.CB = 19'd              119583;
defparam Ur2_n_2_pp.CC = 19'd               91525;
defparam Ur2_n_2_pp.CD = 19'd              124625;
defparam Ur2_n_2_pp.CE = 19'd              129881;
defparam Ur2_n_2_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_3_pp;
rom_lut Ur2_n_3_pp (.addr_in( {sym_res_11_n[3],sym_res_10_n[3],sym_res_9_n[3],sym_res_8_n[3] } ), .data_out( lut_val_2_n_3_pp[18:0]) ) ;
 defparam Ur2_n_3_pp.DATA_WIDTH = 19;
defparam Ur2_n_3_pp.C0 = 19'd                   0;
defparam Ur2_n_3_pp.C1 = 19'd               33100;
defparam Ur2_n_3_pp.C2 = 19'd               38356;
defparam Ur2_n_3_pp.C3 = 19'd               71456;
defparam Ur2_n_3_pp.C4 = 19'd               43398;
defparam Ur2_n_3_pp.C5 = 19'd               76498;
defparam Ur2_n_3_pp.C6 = 19'd               81754;
defparam Ur2_n_3_pp.C7 = 19'd              114854;
defparam Ur2_n_3_pp.C8 = 19'd               48127;
defparam Ur2_n_3_pp.C9 = 19'd               81227;
defparam Ur2_n_3_pp.CA = 19'd               86483;
defparam Ur2_n_3_pp.CB = 19'd              119583;
defparam Ur2_n_3_pp.CC = 19'd               91525;
defparam Ur2_n_3_pp.CD = 19'd              124625;
defparam Ur2_n_3_pp.CE = 19'd              129881;
defparam Ur2_n_3_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_4_pp;
rom_lut Ur2_n_4_pp (.addr_in( {sym_res_11_n[4],sym_res_10_n[4],sym_res_9_n[4],sym_res_8_n[4] } ), .data_out( lut_val_2_n_4_pp[18:0]) ) ;
 defparam Ur2_n_4_pp.DATA_WIDTH = 19;
defparam Ur2_n_4_pp.C0 = 19'd                   0;
defparam Ur2_n_4_pp.C1 = 19'd               33100;
defparam Ur2_n_4_pp.C2 = 19'd               38356;
defparam Ur2_n_4_pp.C3 = 19'd               71456;
defparam Ur2_n_4_pp.C4 = 19'd               43398;
defparam Ur2_n_4_pp.C5 = 19'd               76498;
defparam Ur2_n_4_pp.C6 = 19'd               81754;
defparam Ur2_n_4_pp.C7 = 19'd              114854;
defparam Ur2_n_4_pp.C8 = 19'd               48127;
defparam Ur2_n_4_pp.C9 = 19'd               81227;
defparam Ur2_n_4_pp.CA = 19'd               86483;
defparam Ur2_n_4_pp.CB = 19'd              119583;
defparam Ur2_n_4_pp.CC = 19'd               91525;
defparam Ur2_n_4_pp.CD = 19'd              124625;
defparam Ur2_n_4_pp.CE = 19'd              129881;
defparam Ur2_n_4_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_5_pp;
rom_lut Ur2_n_5_pp (.addr_in( {sym_res_11_n[5],sym_res_10_n[5],sym_res_9_n[5],sym_res_8_n[5] } ), .data_out( lut_val_2_n_5_pp[18:0]) ) ;
 defparam Ur2_n_5_pp.DATA_WIDTH = 19;
defparam Ur2_n_5_pp.C0 = 19'd                   0;
defparam Ur2_n_5_pp.C1 = 19'd               33100;
defparam Ur2_n_5_pp.C2 = 19'd               38356;
defparam Ur2_n_5_pp.C3 = 19'd               71456;
defparam Ur2_n_5_pp.C4 = 19'd               43398;
defparam Ur2_n_5_pp.C5 = 19'd               76498;
defparam Ur2_n_5_pp.C6 = 19'd               81754;
defparam Ur2_n_5_pp.C7 = 19'd              114854;
defparam Ur2_n_5_pp.C8 = 19'd               48127;
defparam Ur2_n_5_pp.C9 = 19'd               81227;
defparam Ur2_n_5_pp.CA = 19'd               86483;
defparam Ur2_n_5_pp.CB = 19'd              119583;
defparam Ur2_n_5_pp.CC = 19'd               91525;
defparam Ur2_n_5_pp.CD = 19'd              124625;
defparam Ur2_n_5_pp.CE = 19'd              129881;
defparam Ur2_n_5_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_6_pp;
rom_lut Ur2_n_6_pp (.addr_in( {sym_res_11_n[6],sym_res_10_n[6],sym_res_9_n[6],sym_res_8_n[6] } ), .data_out( lut_val_2_n_6_pp[18:0]) ) ;
 defparam Ur2_n_6_pp.DATA_WIDTH = 19;
defparam Ur2_n_6_pp.C0 = 19'd                   0;
defparam Ur2_n_6_pp.C1 = 19'd               33100;
defparam Ur2_n_6_pp.C2 = 19'd               38356;
defparam Ur2_n_6_pp.C3 = 19'd               71456;
defparam Ur2_n_6_pp.C4 = 19'd               43398;
defparam Ur2_n_6_pp.C5 = 19'd               76498;
defparam Ur2_n_6_pp.C6 = 19'd               81754;
defparam Ur2_n_6_pp.C7 = 19'd              114854;
defparam Ur2_n_6_pp.C8 = 19'd               48127;
defparam Ur2_n_6_pp.C9 = 19'd               81227;
defparam Ur2_n_6_pp.CA = 19'd               86483;
defparam Ur2_n_6_pp.CB = 19'd              119583;
defparam Ur2_n_6_pp.CC = 19'd               91525;
defparam Ur2_n_6_pp.CD = 19'd              124625;
defparam Ur2_n_6_pp.CE = 19'd              129881;
defparam Ur2_n_6_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_7_pp;
rom_lut Ur2_n_7_pp (.addr_in( {sym_res_11_n[7],sym_res_10_n[7],sym_res_9_n[7],sym_res_8_n[7] } ), .data_out( lut_val_2_n_7_pp[18:0]) ) ;
 defparam Ur2_n_7_pp.DATA_WIDTH = 19;
defparam Ur2_n_7_pp.C0 = 19'd                   0;
defparam Ur2_n_7_pp.C1 = 19'd               33100;
defparam Ur2_n_7_pp.C2 = 19'd               38356;
defparam Ur2_n_7_pp.C3 = 19'd               71456;
defparam Ur2_n_7_pp.C4 = 19'd               43398;
defparam Ur2_n_7_pp.C5 = 19'd               76498;
defparam Ur2_n_7_pp.C6 = 19'd               81754;
defparam Ur2_n_7_pp.C7 = 19'd              114854;
defparam Ur2_n_7_pp.C8 = 19'd               48127;
defparam Ur2_n_7_pp.C9 = 19'd               81227;
defparam Ur2_n_7_pp.CA = 19'd               86483;
defparam Ur2_n_7_pp.CB = 19'd              119583;
defparam Ur2_n_7_pp.CC = 19'd               91525;
defparam Ur2_n_7_pp.CD = 19'd              124625;
defparam Ur2_n_7_pp.CE = 19'd              129881;
defparam Ur2_n_7_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_8_pp;
rom_lut Ur2_n_8_pp (.addr_in( {sym_res_11_n[8],sym_res_10_n[8],sym_res_9_n[8],sym_res_8_n[8] } ), .data_out( lut_val_2_n_8_pp[18:0]) ) ;
 defparam Ur2_n_8_pp.DATA_WIDTH = 19;
defparam Ur2_n_8_pp.C0 = 19'd                   0;
defparam Ur2_n_8_pp.C1 = 19'd               33100;
defparam Ur2_n_8_pp.C2 = 19'd               38356;
defparam Ur2_n_8_pp.C3 = 19'd               71456;
defparam Ur2_n_8_pp.C4 = 19'd               43398;
defparam Ur2_n_8_pp.C5 = 19'd               76498;
defparam Ur2_n_8_pp.C6 = 19'd               81754;
defparam Ur2_n_8_pp.C7 = 19'd              114854;
defparam Ur2_n_8_pp.C8 = 19'd               48127;
defparam Ur2_n_8_pp.C9 = 19'd               81227;
defparam Ur2_n_8_pp.CA = 19'd               86483;
defparam Ur2_n_8_pp.CB = 19'd              119583;
defparam Ur2_n_8_pp.CC = 19'd               91525;
defparam Ur2_n_8_pp.CD = 19'd              124625;
defparam Ur2_n_8_pp.CE = 19'd              129881;
defparam Ur2_n_8_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_9_pp;
rom_lut Ur2_n_9_pp (.addr_in( {sym_res_11_n[9],sym_res_10_n[9],sym_res_9_n[9],sym_res_8_n[9] } ), .data_out( lut_val_2_n_9_pp[18:0]) ) ;
 defparam Ur2_n_9_pp.DATA_WIDTH = 19;
defparam Ur2_n_9_pp.C0 = 19'd                   0;
defparam Ur2_n_9_pp.C1 = 19'd               33100;
defparam Ur2_n_9_pp.C2 = 19'd               38356;
defparam Ur2_n_9_pp.C3 = 19'd               71456;
defparam Ur2_n_9_pp.C4 = 19'd               43398;
defparam Ur2_n_9_pp.C5 = 19'd               76498;
defparam Ur2_n_9_pp.C6 = 19'd               81754;
defparam Ur2_n_9_pp.C7 = 19'd              114854;
defparam Ur2_n_9_pp.C8 = 19'd               48127;
defparam Ur2_n_9_pp.C9 = 19'd               81227;
defparam Ur2_n_9_pp.CA = 19'd               86483;
defparam Ur2_n_9_pp.CB = 19'd              119583;
defparam Ur2_n_9_pp.CC = 19'd               91525;
defparam Ur2_n_9_pp.CD = 19'd              124625;
defparam Ur2_n_9_pp.CE = 19'd              129881;
defparam Ur2_n_9_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_10_pp;
rom_lut Ur2_n_10_pp (.addr_in( {sym_res_11_n[10],sym_res_10_n[10],sym_res_9_n[10],sym_res_8_n[10] } ), .data_out( lut_val_2_n_10_pp[18:0]) ) ;
 defparam Ur2_n_10_pp.DATA_WIDTH = 19;
defparam Ur2_n_10_pp.C0 = 19'd                   0;
defparam Ur2_n_10_pp.C1 = 19'd               33100;
defparam Ur2_n_10_pp.C2 = 19'd               38356;
defparam Ur2_n_10_pp.C3 = 19'd               71456;
defparam Ur2_n_10_pp.C4 = 19'd               43398;
defparam Ur2_n_10_pp.C5 = 19'd               76498;
defparam Ur2_n_10_pp.C6 = 19'd               81754;
defparam Ur2_n_10_pp.C7 = 19'd              114854;
defparam Ur2_n_10_pp.C8 = 19'd               48127;
defparam Ur2_n_10_pp.C9 = 19'd               81227;
defparam Ur2_n_10_pp.CA = 19'd               86483;
defparam Ur2_n_10_pp.CB = 19'd              119583;
defparam Ur2_n_10_pp.CC = 19'd               91525;
defparam Ur2_n_10_pp.CD = 19'd              124625;
defparam Ur2_n_10_pp.CE = 19'd              129881;
defparam Ur2_n_10_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_11_pp;
rom_lut Ur2_n_11_pp (.addr_in( {sym_res_11_n[11],sym_res_10_n[11],sym_res_9_n[11],sym_res_8_n[11] } ), .data_out( lut_val_2_n_11_pp[18:0]) ) ;
 defparam Ur2_n_11_pp.DATA_WIDTH = 19;
defparam Ur2_n_11_pp.C0 = 19'd                   0;
defparam Ur2_n_11_pp.C1 = 19'd               33100;
defparam Ur2_n_11_pp.C2 = 19'd               38356;
defparam Ur2_n_11_pp.C3 = 19'd               71456;
defparam Ur2_n_11_pp.C4 = 19'd               43398;
defparam Ur2_n_11_pp.C5 = 19'd               76498;
defparam Ur2_n_11_pp.C6 = 19'd               81754;
defparam Ur2_n_11_pp.C7 = 19'd              114854;
defparam Ur2_n_11_pp.C8 = 19'd               48127;
defparam Ur2_n_11_pp.C9 = 19'd               81227;
defparam Ur2_n_11_pp.CA = 19'd               86483;
defparam Ur2_n_11_pp.CB = 19'd              119583;
defparam Ur2_n_11_pp.CC = 19'd               91525;
defparam Ur2_n_11_pp.CD = 19'd              124625;
defparam Ur2_n_11_pp.CE = 19'd              129881;
defparam Ur2_n_11_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_12_pp;
rom_lut Ur2_n_12_pp (.addr_in( {sym_res_11_n[12],sym_res_10_n[12],sym_res_9_n[12],sym_res_8_n[12] } ), .data_out( lut_val_2_n_12_pp[18:0]) ) ;
 defparam Ur2_n_12_pp.DATA_WIDTH = 19;
defparam Ur2_n_12_pp.C0 = 19'd                   0;
defparam Ur2_n_12_pp.C1 = 19'd               33100;
defparam Ur2_n_12_pp.C2 = 19'd               38356;
defparam Ur2_n_12_pp.C3 = 19'd               71456;
defparam Ur2_n_12_pp.C4 = 19'd               43398;
defparam Ur2_n_12_pp.C5 = 19'd               76498;
defparam Ur2_n_12_pp.C6 = 19'd               81754;
defparam Ur2_n_12_pp.C7 = 19'd              114854;
defparam Ur2_n_12_pp.C8 = 19'd               48127;
defparam Ur2_n_12_pp.C9 = 19'd               81227;
defparam Ur2_n_12_pp.CA = 19'd               86483;
defparam Ur2_n_12_pp.CB = 19'd              119583;
defparam Ur2_n_12_pp.CC = 19'd               91525;
defparam Ur2_n_12_pp.CD = 19'd              124625;
defparam Ur2_n_12_pp.CE = 19'd              129881;
defparam Ur2_n_12_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_13_pp;
rom_lut Ur2_n_13_pp (.addr_in( {sym_res_11_n[13],sym_res_10_n[13],sym_res_9_n[13],sym_res_8_n[13] } ), .data_out( lut_val_2_n_13_pp[18:0]) ) ;
 defparam Ur2_n_13_pp.DATA_WIDTH = 19;
defparam Ur2_n_13_pp.C0 = 19'd                   0;
defparam Ur2_n_13_pp.C1 = 19'd               33100;
defparam Ur2_n_13_pp.C2 = 19'd               38356;
defparam Ur2_n_13_pp.C3 = 19'd               71456;
defparam Ur2_n_13_pp.C4 = 19'd               43398;
defparam Ur2_n_13_pp.C5 = 19'd               76498;
defparam Ur2_n_13_pp.C6 = 19'd               81754;
defparam Ur2_n_13_pp.C7 = 19'd              114854;
defparam Ur2_n_13_pp.C8 = 19'd               48127;
defparam Ur2_n_13_pp.C9 = 19'd               81227;
defparam Ur2_n_13_pp.CA = 19'd               86483;
defparam Ur2_n_13_pp.CB = 19'd              119583;
defparam Ur2_n_13_pp.CC = 19'd               91525;
defparam Ur2_n_13_pp.CD = 19'd              124625;
defparam Ur2_n_13_pp.CE = 19'd              129881;
defparam Ur2_n_13_pp.CF = 19'd              162981;
wire [18:0] lut_val_2_n_14_pp;
rom_lut Ur2_n_14_pp (.addr_in( {sym_res_11_n[14],sym_res_10_n[14],sym_res_9_n[14],sym_res_8_n[14] } ), .data_out( lut_val_2_n_14_pp[18:0]) ) ;
 defparam Ur2_n_14_pp.DATA_WIDTH = 19;
defparam Ur2_n_14_pp.C0 = 19'd                   0;
defparam Ur2_n_14_pp.C1 = 19'd               33100;
defparam Ur2_n_14_pp.C2 = 19'd               38356;
defparam Ur2_n_14_pp.C3 = 19'd               71456;
defparam Ur2_n_14_pp.C4 = 19'd               43398;
defparam Ur2_n_14_pp.C5 = 19'd               76498;
defparam Ur2_n_14_pp.C6 = 19'd               81754;
defparam Ur2_n_14_pp.C7 = 19'd              114854;
defparam Ur2_n_14_pp.C8 = 19'd               48127;
defparam Ur2_n_14_pp.C9 = 19'd               81227;
defparam Ur2_n_14_pp.CA = 19'd               86483;
defparam Ur2_n_14_pp.CB = 19'd              119583;
defparam Ur2_n_14_pp.CC = 19'd               91525;
defparam Ur2_n_14_pp.CD = 19'd              124625;
defparam Ur2_n_14_pp.CE = 19'd              129881;
defparam Ur2_n_14_pp.CF = 19'd              162981;
wire [18:0] lut_val_3_n_0_pp;
rom_lut Ur3_n_0_pp (.addr_in( {sym_res_15_n[0],sym_res_14_n[0],sym_res_13_n[0],sym_res_12_n[0] } ), .data_out( lut_val_3_n_0_pp[18:0]) ) ;
 defparam Ur3_n_0_pp.DATA_WIDTH = 19;
defparam Ur3_n_0_pp.C0 = 19'd                   0;
defparam Ur3_n_0_pp.C1 = 19'd               52446;
defparam Ur3_n_0_pp.C2 = 19'd               56266;
defparam Ur3_n_0_pp.C3 = 19'd              108712;
defparam Ur3_n_0_pp.C4 = 19'd               59507;
defparam Ur3_n_0_pp.C5 = 19'd              111953;
defparam Ur3_n_0_pp.C6 = 19'd              115773;
defparam Ur3_n_0_pp.C7 = 19'd              168219;
defparam Ur3_n_0_pp.C8 = 19'd               62102;
defparam Ur3_n_0_pp.C9 = 19'd              114548;
defparam Ur3_n_0_pp.CA = 19'd              118368;
defparam Ur3_n_0_pp.CB = 19'd              170814;
defparam Ur3_n_0_pp.CC = 19'd              121609;
defparam Ur3_n_0_pp.CD = 19'd              174055;
defparam Ur3_n_0_pp.CE = 19'd              177875;
defparam Ur3_n_0_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_1_pp;
rom_lut Ur3_n_1_pp (.addr_in( {sym_res_15_n[1],sym_res_14_n[1],sym_res_13_n[1],sym_res_12_n[1] } ), .data_out( lut_val_3_n_1_pp[18:0]) ) ;
 defparam Ur3_n_1_pp.DATA_WIDTH = 19;
defparam Ur3_n_1_pp.C0 = 19'd                   0;
defparam Ur3_n_1_pp.C1 = 19'd               52446;
defparam Ur3_n_1_pp.C2 = 19'd               56266;
defparam Ur3_n_1_pp.C3 = 19'd              108712;
defparam Ur3_n_1_pp.C4 = 19'd               59507;
defparam Ur3_n_1_pp.C5 = 19'd              111953;
defparam Ur3_n_1_pp.C6 = 19'd              115773;
defparam Ur3_n_1_pp.C7 = 19'd              168219;
defparam Ur3_n_1_pp.C8 = 19'd               62102;
defparam Ur3_n_1_pp.C9 = 19'd              114548;
defparam Ur3_n_1_pp.CA = 19'd              118368;
defparam Ur3_n_1_pp.CB = 19'd              170814;
defparam Ur3_n_1_pp.CC = 19'd              121609;
defparam Ur3_n_1_pp.CD = 19'd              174055;
defparam Ur3_n_1_pp.CE = 19'd              177875;
defparam Ur3_n_1_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_2_pp;
rom_lut Ur3_n_2_pp (.addr_in( {sym_res_15_n[2],sym_res_14_n[2],sym_res_13_n[2],sym_res_12_n[2] } ), .data_out( lut_val_3_n_2_pp[18:0]) ) ;
 defparam Ur3_n_2_pp.DATA_WIDTH = 19;
defparam Ur3_n_2_pp.C0 = 19'd                   0;
defparam Ur3_n_2_pp.C1 = 19'd               52446;
defparam Ur3_n_2_pp.C2 = 19'd               56266;
defparam Ur3_n_2_pp.C3 = 19'd              108712;
defparam Ur3_n_2_pp.C4 = 19'd               59507;
defparam Ur3_n_2_pp.C5 = 19'd              111953;
defparam Ur3_n_2_pp.C6 = 19'd              115773;
defparam Ur3_n_2_pp.C7 = 19'd              168219;
defparam Ur3_n_2_pp.C8 = 19'd               62102;
defparam Ur3_n_2_pp.C9 = 19'd              114548;
defparam Ur3_n_2_pp.CA = 19'd              118368;
defparam Ur3_n_2_pp.CB = 19'd              170814;
defparam Ur3_n_2_pp.CC = 19'd              121609;
defparam Ur3_n_2_pp.CD = 19'd              174055;
defparam Ur3_n_2_pp.CE = 19'd              177875;
defparam Ur3_n_2_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_3_pp;
rom_lut Ur3_n_3_pp (.addr_in( {sym_res_15_n[3],sym_res_14_n[3],sym_res_13_n[3],sym_res_12_n[3] } ), .data_out( lut_val_3_n_3_pp[18:0]) ) ;
 defparam Ur3_n_3_pp.DATA_WIDTH = 19;
defparam Ur3_n_3_pp.C0 = 19'd                   0;
defparam Ur3_n_3_pp.C1 = 19'd               52446;
defparam Ur3_n_3_pp.C2 = 19'd               56266;
defparam Ur3_n_3_pp.C3 = 19'd              108712;
defparam Ur3_n_3_pp.C4 = 19'd               59507;
defparam Ur3_n_3_pp.C5 = 19'd              111953;
defparam Ur3_n_3_pp.C6 = 19'd              115773;
defparam Ur3_n_3_pp.C7 = 19'd              168219;
defparam Ur3_n_3_pp.C8 = 19'd               62102;
defparam Ur3_n_3_pp.C9 = 19'd              114548;
defparam Ur3_n_3_pp.CA = 19'd              118368;
defparam Ur3_n_3_pp.CB = 19'd              170814;
defparam Ur3_n_3_pp.CC = 19'd              121609;
defparam Ur3_n_3_pp.CD = 19'd              174055;
defparam Ur3_n_3_pp.CE = 19'd              177875;
defparam Ur3_n_3_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_4_pp;
rom_lut Ur3_n_4_pp (.addr_in( {sym_res_15_n[4],sym_res_14_n[4],sym_res_13_n[4],sym_res_12_n[4] } ), .data_out( lut_val_3_n_4_pp[18:0]) ) ;
 defparam Ur3_n_4_pp.DATA_WIDTH = 19;
defparam Ur3_n_4_pp.C0 = 19'd                   0;
defparam Ur3_n_4_pp.C1 = 19'd               52446;
defparam Ur3_n_4_pp.C2 = 19'd               56266;
defparam Ur3_n_4_pp.C3 = 19'd              108712;
defparam Ur3_n_4_pp.C4 = 19'd               59507;
defparam Ur3_n_4_pp.C5 = 19'd              111953;
defparam Ur3_n_4_pp.C6 = 19'd              115773;
defparam Ur3_n_4_pp.C7 = 19'd              168219;
defparam Ur3_n_4_pp.C8 = 19'd               62102;
defparam Ur3_n_4_pp.C9 = 19'd              114548;
defparam Ur3_n_4_pp.CA = 19'd              118368;
defparam Ur3_n_4_pp.CB = 19'd              170814;
defparam Ur3_n_4_pp.CC = 19'd              121609;
defparam Ur3_n_4_pp.CD = 19'd              174055;
defparam Ur3_n_4_pp.CE = 19'd              177875;
defparam Ur3_n_4_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_5_pp;
rom_lut Ur3_n_5_pp (.addr_in( {sym_res_15_n[5],sym_res_14_n[5],sym_res_13_n[5],sym_res_12_n[5] } ), .data_out( lut_val_3_n_5_pp[18:0]) ) ;
 defparam Ur3_n_5_pp.DATA_WIDTH = 19;
defparam Ur3_n_5_pp.C0 = 19'd                   0;
defparam Ur3_n_5_pp.C1 = 19'd               52446;
defparam Ur3_n_5_pp.C2 = 19'd               56266;
defparam Ur3_n_5_pp.C3 = 19'd              108712;
defparam Ur3_n_5_pp.C4 = 19'd               59507;
defparam Ur3_n_5_pp.C5 = 19'd              111953;
defparam Ur3_n_5_pp.C6 = 19'd              115773;
defparam Ur3_n_5_pp.C7 = 19'd              168219;
defparam Ur3_n_5_pp.C8 = 19'd               62102;
defparam Ur3_n_5_pp.C9 = 19'd              114548;
defparam Ur3_n_5_pp.CA = 19'd              118368;
defparam Ur3_n_5_pp.CB = 19'd              170814;
defparam Ur3_n_5_pp.CC = 19'd              121609;
defparam Ur3_n_5_pp.CD = 19'd              174055;
defparam Ur3_n_5_pp.CE = 19'd              177875;
defparam Ur3_n_5_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_6_pp;
rom_lut Ur3_n_6_pp (.addr_in( {sym_res_15_n[6],sym_res_14_n[6],sym_res_13_n[6],sym_res_12_n[6] } ), .data_out( lut_val_3_n_6_pp[18:0]) ) ;
 defparam Ur3_n_6_pp.DATA_WIDTH = 19;
defparam Ur3_n_6_pp.C0 = 19'd                   0;
defparam Ur3_n_6_pp.C1 = 19'd               52446;
defparam Ur3_n_6_pp.C2 = 19'd               56266;
defparam Ur3_n_6_pp.C3 = 19'd              108712;
defparam Ur3_n_6_pp.C4 = 19'd               59507;
defparam Ur3_n_6_pp.C5 = 19'd              111953;
defparam Ur3_n_6_pp.C6 = 19'd              115773;
defparam Ur3_n_6_pp.C7 = 19'd              168219;
defparam Ur3_n_6_pp.C8 = 19'd               62102;
defparam Ur3_n_6_pp.C9 = 19'd              114548;
defparam Ur3_n_6_pp.CA = 19'd              118368;
defparam Ur3_n_6_pp.CB = 19'd              170814;
defparam Ur3_n_6_pp.CC = 19'd              121609;
defparam Ur3_n_6_pp.CD = 19'd              174055;
defparam Ur3_n_6_pp.CE = 19'd              177875;
defparam Ur3_n_6_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_7_pp;
rom_lut Ur3_n_7_pp (.addr_in( {sym_res_15_n[7],sym_res_14_n[7],sym_res_13_n[7],sym_res_12_n[7] } ), .data_out( lut_val_3_n_7_pp[18:0]) ) ;
 defparam Ur3_n_7_pp.DATA_WIDTH = 19;
defparam Ur3_n_7_pp.C0 = 19'd                   0;
defparam Ur3_n_7_pp.C1 = 19'd               52446;
defparam Ur3_n_7_pp.C2 = 19'd               56266;
defparam Ur3_n_7_pp.C3 = 19'd              108712;
defparam Ur3_n_7_pp.C4 = 19'd               59507;
defparam Ur3_n_7_pp.C5 = 19'd              111953;
defparam Ur3_n_7_pp.C6 = 19'd              115773;
defparam Ur3_n_7_pp.C7 = 19'd              168219;
defparam Ur3_n_7_pp.C8 = 19'd               62102;
defparam Ur3_n_7_pp.C9 = 19'd              114548;
defparam Ur3_n_7_pp.CA = 19'd              118368;
defparam Ur3_n_7_pp.CB = 19'd              170814;
defparam Ur3_n_7_pp.CC = 19'd              121609;
defparam Ur3_n_7_pp.CD = 19'd              174055;
defparam Ur3_n_7_pp.CE = 19'd              177875;
defparam Ur3_n_7_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_8_pp;
rom_lut Ur3_n_8_pp (.addr_in( {sym_res_15_n[8],sym_res_14_n[8],sym_res_13_n[8],sym_res_12_n[8] } ), .data_out( lut_val_3_n_8_pp[18:0]) ) ;
 defparam Ur3_n_8_pp.DATA_WIDTH = 19;
defparam Ur3_n_8_pp.C0 = 19'd                   0;
defparam Ur3_n_8_pp.C1 = 19'd               52446;
defparam Ur3_n_8_pp.C2 = 19'd               56266;
defparam Ur3_n_8_pp.C3 = 19'd              108712;
defparam Ur3_n_8_pp.C4 = 19'd               59507;
defparam Ur3_n_8_pp.C5 = 19'd              111953;
defparam Ur3_n_8_pp.C6 = 19'd              115773;
defparam Ur3_n_8_pp.C7 = 19'd              168219;
defparam Ur3_n_8_pp.C8 = 19'd               62102;
defparam Ur3_n_8_pp.C9 = 19'd              114548;
defparam Ur3_n_8_pp.CA = 19'd              118368;
defparam Ur3_n_8_pp.CB = 19'd              170814;
defparam Ur3_n_8_pp.CC = 19'd              121609;
defparam Ur3_n_8_pp.CD = 19'd              174055;
defparam Ur3_n_8_pp.CE = 19'd              177875;
defparam Ur3_n_8_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_9_pp;
rom_lut Ur3_n_9_pp (.addr_in( {sym_res_15_n[9],sym_res_14_n[9],sym_res_13_n[9],sym_res_12_n[9] } ), .data_out( lut_val_3_n_9_pp[18:0]) ) ;
 defparam Ur3_n_9_pp.DATA_WIDTH = 19;
defparam Ur3_n_9_pp.C0 = 19'd                   0;
defparam Ur3_n_9_pp.C1 = 19'd               52446;
defparam Ur3_n_9_pp.C2 = 19'd               56266;
defparam Ur3_n_9_pp.C3 = 19'd              108712;
defparam Ur3_n_9_pp.C4 = 19'd               59507;
defparam Ur3_n_9_pp.C5 = 19'd              111953;
defparam Ur3_n_9_pp.C6 = 19'd              115773;
defparam Ur3_n_9_pp.C7 = 19'd              168219;
defparam Ur3_n_9_pp.C8 = 19'd               62102;
defparam Ur3_n_9_pp.C9 = 19'd              114548;
defparam Ur3_n_9_pp.CA = 19'd              118368;
defparam Ur3_n_9_pp.CB = 19'd              170814;
defparam Ur3_n_9_pp.CC = 19'd              121609;
defparam Ur3_n_9_pp.CD = 19'd              174055;
defparam Ur3_n_9_pp.CE = 19'd              177875;
defparam Ur3_n_9_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_10_pp;
rom_lut Ur3_n_10_pp (.addr_in( {sym_res_15_n[10],sym_res_14_n[10],sym_res_13_n[10],sym_res_12_n[10] } ), .data_out( lut_val_3_n_10_pp[18:0]) ) ;
 defparam Ur3_n_10_pp.DATA_WIDTH = 19;
defparam Ur3_n_10_pp.C0 = 19'd                   0;
defparam Ur3_n_10_pp.C1 = 19'd               52446;
defparam Ur3_n_10_pp.C2 = 19'd               56266;
defparam Ur3_n_10_pp.C3 = 19'd              108712;
defparam Ur3_n_10_pp.C4 = 19'd               59507;
defparam Ur3_n_10_pp.C5 = 19'd              111953;
defparam Ur3_n_10_pp.C6 = 19'd              115773;
defparam Ur3_n_10_pp.C7 = 19'd              168219;
defparam Ur3_n_10_pp.C8 = 19'd               62102;
defparam Ur3_n_10_pp.C9 = 19'd              114548;
defparam Ur3_n_10_pp.CA = 19'd              118368;
defparam Ur3_n_10_pp.CB = 19'd              170814;
defparam Ur3_n_10_pp.CC = 19'd              121609;
defparam Ur3_n_10_pp.CD = 19'd              174055;
defparam Ur3_n_10_pp.CE = 19'd              177875;
defparam Ur3_n_10_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_11_pp;
rom_lut Ur3_n_11_pp (.addr_in( {sym_res_15_n[11],sym_res_14_n[11],sym_res_13_n[11],sym_res_12_n[11] } ), .data_out( lut_val_3_n_11_pp[18:0]) ) ;
 defparam Ur3_n_11_pp.DATA_WIDTH = 19;
defparam Ur3_n_11_pp.C0 = 19'd                   0;
defparam Ur3_n_11_pp.C1 = 19'd               52446;
defparam Ur3_n_11_pp.C2 = 19'd               56266;
defparam Ur3_n_11_pp.C3 = 19'd              108712;
defparam Ur3_n_11_pp.C4 = 19'd               59507;
defparam Ur3_n_11_pp.C5 = 19'd              111953;
defparam Ur3_n_11_pp.C6 = 19'd              115773;
defparam Ur3_n_11_pp.C7 = 19'd              168219;
defparam Ur3_n_11_pp.C8 = 19'd               62102;
defparam Ur3_n_11_pp.C9 = 19'd              114548;
defparam Ur3_n_11_pp.CA = 19'd              118368;
defparam Ur3_n_11_pp.CB = 19'd              170814;
defparam Ur3_n_11_pp.CC = 19'd              121609;
defparam Ur3_n_11_pp.CD = 19'd              174055;
defparam Ur3_n_11_pp.CE = 19'd              177875;
defparam Ur3_n_11_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_12_pp;
rom_lut Ur3_n_12_pp (.addr_in( {sym_res_15_n[12],sym_res_14_n[12],sym_res_13_n[12],sym_res_12_n[12] } ), .data_out( lut_val_3_n_12_pp[18:0]) ) ;
 defparam Ur3_n_12_pp.DATA_WIDTH = 19;
defparam Ur3_n_12_pp.C0 = 19'd                   0;
defparam Ur3_n_12_pp.C1 = 19'd               52446;
defparam Ur3_n_12_pp.C2 = 19'd               56266;
defparam Ur3_n_12_pp.C3 = 19'd              108712;
defparam Ur3_n_12_pp.C4 = 19'd               59507;
defparam Ur3_n_12_pp.C5 = 19'd              111953;
defparam Ur3_n_12_pp.C6 = 19'd              115773;
defparam Ur3_n_12_pp.C7 = 19'd              168219;
defparam Ur3_n_12_pp.C8 = 19'd               62102;
defparam Ur3_n_12_pp.C9 = 19'd              114548;
defparam Ur3_n_12_pp.CA = 19'd              118368;
defparam Ur3_n_12_pp.CB = 19'd              170814;
defparam Ur3_n_12_pp.CC = 19'd              121609;
defparam Ur3_n_12_pp.CD = 19'd              174055;
defparam Ur3_n_12_pp.CE = 19'd              177875;
defparam Ur3_n_12_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_13_pp;
rom_lut Ur3_n_13_pp (.addr_in( {sym_res_15_n[13],sym_res_14_n[13],sym_res_13_n[13],sym_res_12_n[13] } ), .data_out( lut_val_3_n_13_pp[18:0]) ) ;
 defparam Ur3_n_13_pp.DATA_WIDTH = 19;
defparam Ur3_n_13_pp.C0 = 19'd                   0;
defparam Ur3_n_13_pp.C1 = 19'd               52446;
defparam Ur3_n_13_pp.C2 = 19'd               56266;
defparam Ur3_n_13_pp.C3 = 19'd              108712;
defparam Ur3_n_13_pp.C4 = 19'd               59507;
defparam Ur3_n_13_pp.C5 = 19'd              111953;
defparam Ur3_n_13_pp.C6 = 19'd              115773;
defparam Ur3_n_13_pp.C7 = 19'd              168219;
defparam Ur3_n_13_pp.C8 = 19'd               62102;
defparam Ur3_n_13_pp.C9 = 19'd              114548;
defparam Ur3_n_13_pp.CA = 19'd              118368;
defparam Ur3_n_13_pp.CB = 19'd              170814;
defparam Ur3_n_13_pp.CC = 19'd              121609;
defparam Ur3_n_13_pp.CD = 19'd              174055;
defparam Ur3_n_13_pp.CE = 19'd              177875;
defparam Ur3_n_13_pp.CF = 19'd              230321;
wire [18:0] lut_val_3_n_14_pp;
rom_lut Ur3_n_14_pp (.addr_in( {sym_res_15_n[14],sym_res_14_n[14],sym_res_13_n[14],sym_res_12_n[14] } ), .data_out( lut_val_3_n_14_pp[18:0]) ) ;
 defparam Ur3_n_14_pp.DATA_WIDTH = 19;
defparam Ur3_n_14_pp.C0 = 19'd                   0;
defparam Ur3_n_14_pp.C1 = 19'd               52446;
defparam Ur3_n_14_pp.C2 = 19'd               56266;
defparam Ur3_n_14_pp.C3 = 19'd              108712;
defparam Ur3_n_14_pp.C4 = 19'd               59507;
defparam Ur3_n_14_pp.C5 = 19'd              111953;
defparam Ur3_n_14_pp.C6 = 19'd              115773;
defparam Ur3_n_14_pp.C7 = 19'd              168219;
defparam Ur3_n_14_pp.C8 = 19'd               62102;
defparam Ur3_n_14_pp.C9 = 19'd              114548;
defparam Ur3_n_14_pp.CA = 19'd              118368;
defparam Ur3_n_14_pp.CB = 19'd              170814;
defparam Ur3_n_14_pp.CC = 19'd              121609;
defparam Ur3_n_14_pp.CD = 19'd              174055;
defparam Ur3_n_14_pp.CE = 19'd              177875;
defparam Ur3_n_14_pp.CF = 19'd              230321;
wire [18:0] lut_val_4_n_0_pp;
rom_lut Ur4_n_0_pp (.addr_in( {addr_low,sym_res_18_n[0],sym_res_17_n[0],sym_res_16_n[0] } ), .data_out( lut_val_4_n_0_pp[18:0]) ) ;
 defparam Ur4_n_0_pp.DATA_WIDTH = 19;
defparam Ur4_n_0_pp.C0 = 19'd                   0;
defparam Ur4_n_0_pp.C1 = 19'd               63995;
defparam Ur4_n_0_pp.C2 = 19'd               65148;
defparam Ur4_n_0_pp.C3 = 19'd              129143;
defparam Ur4_n_0_pp.C4 = 19'd               65534;
defparam Ur4_n_0_pp.C5 = 19'd              129529;
defparam Ur4_n_0_pp.C6 = 19'd              130682;
defparam Ur4_n_0_pp.C7 = 19'd              194677;
defparam Ur4_n_0_pp.C8 = 19'd                   0;
defparam Ur4_n_0_pp.C9 = 19'd               63995;
defparam Ur4_n_0_pp.CA = 19'd               65148;
defparam Ur4_n_0_pp.CB = 19'd              129143;
defparam Ur4_n_0_pp.CC = 19'd               65534;
defparam Ur4_n_0_pp.CD = 19'd              129529;
defparam Ur4_n_0_pp.CE = 19'd              130682;
defparam Ur4_n_0_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_1_pp;
rom_lut Ur4_n_1_pp (.addr_in( {addr_low,sym_res_18_n[1],sym_res_17_n[1],sym_res_16_n[1] } ), .data_out( lut_val_4_n_1_pp[18:0]) ) ;
 defparam Ur4_n_1_pp.DATA_WIDTH = 19;
defparam Ur4_n_1_pp.C0 = 19'd                   0;
defparam Ur4_n_1_pp.C1 = 19'd               63995;
defparam Ur4_n_1_pp.C2 = 19'd               65148;
defparam Ur4_n_1_pp.C3 = 19'd              129143;
defparam Ur4_n_1_pp.C4 = 19'd               65534;
defparam Ur4_n_1_pp.C5 = 19'd              129529;
defparam Ur4_n_1_pp.C6 = 19'd              130682;
defparam Ur4_n_1_pp.C7 = 19'd              194677;
defparam Ur4_n_1_pp.C8 = 19'd                   0;
defparam Ur4_n_1_pp.C9 = 19'd               63995;
defparam Ur4_n_1_pp.CA = 19'd               65148;
defparam Ur4_n_1_pp.CB = 19'd              129143;
defparam Ur4_n_1_pp.CC = 19'd               65534;
defparam Ur4_n_1_pp.CD = 19'd              129529;
defparam Ur4_n_1_pp.CE = 19'd              130682;
defparam Ur4_n_1_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_2_pp;
rom_lut Ur4_n_2_pp (.addr_in( {addr_low,sym_res_18_n[2],sym_res_17_n[2],sym_res_16_n[2] } ), .data_out( lut_val_4_n_2_pp[18:0]) ) ;
 defparam Ur4_n_2_pp.DATA_WIDTH = 19;
defparam Ur4_n_2_pp.C0 = 19'd                   0;
defparam Ur4_n_2_pp.C1 = 19'd               63995;
defparam Ur4_n_2_pp.C2 = 19'd               65148;
defparam Ur4_n_2_pp.C3 = 19'd              129143;
defparam Ur4_n_2_pp.C4 = 19'd               65534;
defparam Ur4_n_2_pp.C5 = 19'd              129529;
defparam Ur4_n_2_pp.C6 = 19'd              130682;
defparam Ur4_n_2_pp.C7 = 19'd              194677;
defparam Ur4_n_2_pp.C8 = 19'd                   0;
defparam Ur4_n_2_pp.C9 = 19'd               63995;
defparam Ur4_n_2_pp.CA = 19'd               65148;
defparam Ur4_n_2_pp.CB = 19'd              129143;
defparam Ur4_n_2_pp.CC = 19'd               65534;
defparam Ur4_n_2_pp.CD = 19'd              129529;
defparam Ur4_n_2_pp.CE = 19'd              130682;
defparam Ur4_n_2_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_3_pp;
rom_lut Ur4_n_3_pp (.addr_in( {addr_low,sym_res_18_n[3],sym_res_17_n[3],sym_res_16_n[3] } ), .data_out( lut_val_4_n_3_pp[18:0]) ) ;
 defparam Ur4_n_3_pp.DATA_WIDTH = 19;
defparam Ur4_n_3_pp.C0 = 19'd                   0;
defparam Ur4_n_3_pp.C1 = 19'd               63995;
defparam Ur4_n_3_pp.C2 = 19'd               65148;
defparam Ur4_n_3_pp.C3 = 19'd              129143;
defparam Ur4_n_3_pp.C4 = 19'd               65534;
defparam Ur4_n_3_pp.C5 = 19'd              129529;
defparam Ur4_n_3_pp.C6 = 19'd              130682;
defparam Ur4_n_3_pp.C7 = 19'd              194677;
defparam Ur4_n_3_pp.C8 = 19'd                   0;
defparam Ur4_n_3_pp.C9 = 19'd               63995;
defparam Ur4_n_3_pp.CA = 19'd               65148;
defparam Ur4_n_3_pp.CB = 19'd              129143;
defparam Ur4_n_3_pp.CC = 19'd               65534;
defparam Ur4_n_3_pp.CD = 19'd              129529;
defparam Ur4_n_3_pp.CE = 19'd              130682;
defparam Ur4_n_3_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_4_pp;
rom_lut Ur4_n_4_pp (.addr_in( {addr_low,sym_res_18_n[4],sym_res_17_n[4],sym_res_16_n[4] } ), .data_out( lut_val_4_n_4_pp[18:0]) ) ;
 defparam Ur4_n_4_pp.DATA_WIDTH = 19;
defparam Ur4_n_4_pp.C0 = 19'd                   0;
defparam Ur4_n_4_pp.C1 = 19'd               63995;
defparam Ur4_n_4_pp.C2 = 19'd               65148;
defparam Ur4_n_4_pp.C3 = 19'd              129143;
defparam Ur4_n_4_pp.C4 = 19'd               65534;
defparam Ur4_n_4_pp.C5 = 19'd              129529;
defparam Ur4_n_4_pp.C6 = 19'd              130682;
defparam Ur4_n_4_pp.C7 = 19'd              194677;
defparam Ur4_n_4_pp.C8 = 19'd                   0;
defparam Ur4_n_4_pp.C9 = 19'd               63995;
defparam Ur4_n_4_pp.CA = 19'd               65148;
defparam Ur4_n_4_pp.CB = 19'd              129143;
defparam Ur4_n_4_pp.CC = 19'd               65534;
defparam Ur4_n_4_pp.CD = 19'd              129529;
defparam Ur4_n_4_pp.CE = 19'd              130682;
defparam Ur4_n_4_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_5_pp;
rom_lut Ur4_n_5_pp (.addr_in( {addr_low,sym_res_18_n[5],sym_res_17_n[5],sym_res_16_n[5] } ), .data_out( lut_val_4_n_5_pp[18:0]) ) ;
 defparam Ur4_n_5_pp.DATA_WIDTH = 19;
defparam Ur4_n_5_pp.C0 = 19'd                   0;
defparam Ur4_n_5_pp.C1 = 19'd               63995;
defparam Ur4_n_5_pp.C2 = 19'd               65148;
defparam Ur4_n_5_pp.C3 = 19'd              129143;
defparam Ur4_n_5_pp.C4 = 19'd               65534;
defparam Ur4_n_5_pp.C5 = 19'd              129529;
defparam Ur4_n_5_pp.C6 = 19'd              130682;
defparam Ur4_n_5_pp.C7 = 19'd              194677;
defparam Ur4_n_5_pp.C8 = 19'd                   0;
defparam Ur4_n_5_pp.C9 = 19'd               63995;
defparam Ur4_n_5_pp.CA = 19'd               65148;
defparam Ur4_n_5_pp.CB = 19'd              129143;
defparam Ur4_n_5_pp.CC = 19'd               65534;
defparam Ur4_n_5_pp.CD = 19'd              129529;
defparam Ur4_n_5_pp.CE = 19'd              130682;
defparam Ur4_n_5_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_6_pp;
rom_lut Ur4_n_6_pp (.addr_in( {addr_low,sym_res_18_n[6],sym_res_17_n[6],sym_res_16_n[6] } ), .data_out( lut_val_4_n_6_pp[18:0]) ) ;
 defparam Ur4_n_6_pp.DATA_WIDTH = 19;
defparam Ur4_n_6_pp.C0 = 19'd                   0;
defparam Ur4_n_6_pp.C1 = 19'd               63995;
defparam Ur4_n_6_pp.C2 = 19'd               65148;
defparam Ur4_n_6_pp.C3 = 19'd              129143;
defparam Ur4_n_6_pp.C4 = 19'd               65534;
defparam Ur4_n_6_pp.C5 = 19'd              129529;
defparam Ur4_n_6_pp.C6 = 19'd              130682;
defparam Ur4_n_6_pp.C7 = 19'd              194677;
defparam Ur4_n_6_pp.C8 = 19'd                   0;
defparam Ur4_n_6_pp.C9 = 19'd               63995;
defparam Ur4_n_6_pp.CA = 19'd               65148;
defparam Ur4_n_6_pp.CB = 19'd              129143;
defparam Ur4_n_6_pp.CC = 19'd               65534;
defparam Ur4_n_6_pp.CD = 19'd              129529;
defparam Ur4_n_6_pp.CE = 19'd              130682;
defparam Ur4_n_6_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_7_pp;
rom_lut Ur4_n_7_pp (.addr_in( {addr_low,sym_res_18_n[7],sym_res_17_n[7],sym_res_16_n[7] } ), .data_out( lut_val_4_n_7_pp[18:0]) ) ;
 defparam Ur4_n_7_pp.DATA_WIDTH = 19;
defparam Ur4_n_7_pp.C0 = 19'd                   0;
defparam Ur4_n_7_pp.C1 = 19'd               63995;
defparam Ur4_n_7_pp.C2 = 19'd               65148;
defparam Ur4_n_7_pp.C3 = 19'd              129143;
defparam Ur4_n_7_pp.C4 = 19'd               65534;
defparam Ur4_n_7_pp.C5 = 19'd              129529;
defparam Ur4_n_7_pp.C6 = 19'd              130682;
defparam Ur4_n_7_pp.C7 = 19'd              194677;
defparam Ur4_n_7_pp.C8 = 19'd                   0;
defparam Ur4_n_7_pp.C9 = 19'd               63995;
defparam Ur4_n_7_pp.CA = 19'd               65148;
defparam Ur4_n_7_pp.CB = 19'd              129143;
defparam Ur4_n_7_pp.CC = 19'd               65534;
defparam Ur4_n_7_pp.CD = 19'd              129529;
defparam Ur4_n_7_pp.CE = 19'd              130682;
defparam Ur4_n_7_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_8_pp;
rom_lut Ur4_n_8_pp (.addr_in( {addr_low,sym_res_18_n[8],sym_res_17_n[8],sym_res_16_n[8] } ), .data_out( lut_val_4_n_8_pp[18:0]) ) ;
 defparam Ur4_n_8_pp.DATA_WIDTH = 19;
defparam Ur4_n_8_pp.C0 = 19'd                   0;
defparam Ur4_n_8_pp.C1 = 19'd               63995;
defparam Ur4_n_8_pp.C2 = 19'd               65148;
defparam Ur4_n_8_pp.C3 = 19'd              129143;
defparam Ur4_n_8_pp.C4 = 19'd               65534;
defparam Ur4_n_8_pp.C5 = 19'd              129529;
defparam Ur4_n_8_pp.C6 = 19'd              130682;
defparam Ur4_n_8_pp.C7 = 19'd              194677;
defparam Ur4_n_8_pp.C8 = 19'd                   0;
defparam Ur4_n_8_pp.C9 = 19'd               63995;
defparam Ur4_n_8_pp.CA = 19'd               65148;
defparam Ur4_n_8_pp.CB = 19'd              129143;
defparam Ur4_n_8_pp.CC = 19'd               65534;
defparam Ur4_n_8_pp.CD = 19'd              129529;
defparam Ur4_n_8_pp.CE = 19'd              130682;
defparam Ur4_n_8_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_9_pp;
rom_lut Ur4_n_9_pp (.addr_in( {addr_low,sym_res_18_n[9],sym_res_17_n[9],sym_res_16_n[9] } ), .data_out( lut_val_4_n_9_pp[18:0]) ) ;
 defparam Ur4_n_9_pp.DATA_WIDTH = 19;
defparam Ur4_n_9_pp.C0 = 19'd                   0;
defparam Ur4_n_9_pp.C1 = 19'd               63995;
defparam Ur4_n_9_pp.C2 = 19'd               65148;
defparam Ur4_n_9_pp.C3 = 19'd              129143;
defparam Ur4_n_9_pp.C4 = 19'd               65534;
defparam Ur4_n_9_pp.C5 = 19'd              129529;
defparam Ur4_n_9_pp.C6 = 19'd              130682;
defparam Ur4_n_9_pp.C7 = 19'd              194677;
defparam Ur4_n_9_pp.C8 = 19'd                   0;
defparam Ur4_n_9_pp.C9 = 19'd               63995;
defparam Ur4_n_9_pp.CA = 19'd               65148;
defparam Ur4_n_9_pp.CB = 19'd              129143;
defparam Ur4_n_9_pp.CC = 19'd               65534;
defparam Ur4_n_9_pp.CD = 19'd              129529;
defparam Ur4_n_9_pp.CE = 19'd              130682;
defparam Ur4_n_9_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_10_pp;
rom_lut Ur4_n_10_pp (.addr_in( {addr_low,sym_res_18_n[10],sym_res_17_n[10],sym_res_16_n[10] } ), .data_out( lut_val_4_n_10_pp[18:0]) ) ;
 defparam Ur4_n_10_pp.DATA_WIDTH = 19;
defparam Ur4_n_10_pp.C0 = 19'd                   0;
defparam Ur4_n_10_pp.C1 = 19'd               63995;
defparam Ur4_n_10_pp.C2 = 19'd               65148;
defparam Ur4_n_10_pp.C3 = 19'd              129143;
defparam Ur4_n_10_pp.C4 = 19'd               65534;
defparam Ur4_n_10_pp.C5 = 19'd              129529;
defparam Ur4_n_10_pp.C6 = 19'd              130682;
defparam Ur4_n_10_pp.C7 = 19'd              194677;
defparam Ur4_n_10_pp.C8 = 19'd                   0;
defparam Ur4_n_10_pp.C9 = 19'd               63995;
defparam Ur4_n_10_pp.CA = 19'd               65148;
defparam Ur4_n_10_pp.CB = 19'd              129143;
defparam Ur4_n_10_pp.CC = 19'd               65534;
defparam Ur4_n_10_pp.CD = 19'd              129529;
defparam Ur4_n_10_pp.CE = 19'd              130682;
defparam Ur4_n_10_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_11_pp;
rom_lut Ur4_n_11_pp (.addr_in( {addr_low,sym_res_18_n[11],sym_res_17_n[11],sym_res_16_n[11] } ), .data_out( lut_val_4_n_11_pp[18:0]) ) ;
 defparam Ur4_n_11_pp.DATA_WIDTH = 19;
defparam Ur4_n_11_pp.C0 = 19'd                   0;
defparam Ur4_n_11_pp.C1 = 19'd               63995;
defparam Ur4_n_11_pp.C2 = 19'd               65148;
defparam Ur4_n_11_pp.C3 = 19'd              129143;
defparam Ur4_n_11_pp.C4 = 19'd               65534;
defparam Ur4_n_11_pp.C5 = 19'd              129529;
defparam Ur4_n_11_pp.C6 = 19'd              130682;
defparam Ur4_n_11_pp.C7 = 19'd              194677;
defparam Ur4_n_11_pp.C8 = 19'd                   0;
defparam Ur4_n_11_pp.C9 = 19'd               63995;
defparam Ur4_n_11_pp.CA = 19'd               65148;
defparam Ur4_n_11_pp.CB = 19'd              129143;
defparam Ur4_n_11_pp.CC = 19'd               65534;
defparam Ur4_n_11_pp.CD = 19'd              129529;
defparam Ur4_n_11_pp.CE = 19'd              130682;
defparam Ur4_n_11_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_12_pp;
rom_lut Ur4_n_12_pp (.addr_in( {addr_low,sym_res_18_n[12],sym_res_17_n[12],sym_res_16_n[12] } ), .data_out( lut_val_4_n_12_pp[18:0]) ) ;
 defparam Ur4_n_12_pp.DATA_WIDTH = 19;
defparam Ur4_n_12_pp.C0 = 19'd                   0;
defparam Ur4_n_12_pp.C1 = 19'd               63995;
defparam Ur4_n_12_pp.C2 = 19'd               65148;
defparam Ur4_n_12_pp.C3 = 19'd              129143;
defparam Ur4_n_12_pp.C4 = 19'd               65534;
defparam Ur4_n_12_pp.C5 = 19'd              129529;
defparam Ur4_n_12_pp.C6 = 19'd              130682;
defparam Ur4_n_12_pp.C7 = 19'd              194677;
defparam Ur4_n_12_pp.C8 = 19'd                   0;
defparam Ur4_n_12_pp.C9 = 19'd               63995;
defparam Ur4_n_12_pp.CA = 19'd               65148;
defparam Ur4_n_12_pp.CB = 19'd              129143;
defparam Ur4_n_12_pp.CC = 19'd               65534;
defparam Ur4_n_12_pp.CD = 19'd              129529;
defparam Ur4_n_12_pp.CE = 19'd              130682;
defparam Ur4_n_12_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_13_pp;
rom_lut Ur4_n_13_pp (.addr_in( {addr_low,sym_res_18_n[13],sym_res_17_n[13],sym_res_16_n[13] } ), .data_out( lut_val_4_n_13_pp[18:0]) ) ;
 defparam Ur4_n_13_pp.DATA_WIDTH = 19;
defparam Ur4_n_13_pp.C0 = 19'd                   0;
defparam Ur4_n_13_pp.C1 = 19'd               63995;
defparam Ur4_n_13_pp.C2 = 19'd               65148;
defparam Ur4_n_13_pp.C3 = 19'd              129143;
defparam Ur4_n_13_pp.C4 = 19'd               65534;
defparam Ur4_n_13_pp.C5 = 19'd              129529;
defparam Ur4_n_13_pp.C6 = 19'd              130682;
defparam Ur4_n_13_pp.C7 = 19'd              194677;
defparam Ur4_n_13_pp.C8 = 19'd                   0;
defparam Ur4_n_13_pp.C9 = 19'd               63995;
defparam Ur4_n_13_pp.CA = 19'd               65148;
defparam Ur4_n_13_pp.CB = 19'd              129143;
defparam Ur4_n_13_pp.CC = 19'd               65534;
defparam Ur4_n_13_pp.CD = 19'd              129529;
defparam Ur4_n_13_pp.CE = 19'd              130682;
defparam Ur4_n_13_pp.CF = 19'd              194677;
wire [18:0] lut_val_4_n_14_pp;
rom_lut Ur4_n_14_pp (.addr_in( {addr_low,sym_res_18_n[14],sym_res_17_n[14],sym_res_16_n[14] } ), .data_out( lut_val_4_n_14_pp[18:0]) ) ;
 defparam Ur4_n_14_pp.DATA_WIDTH = 19;
defparam Ur4_n_14_pp.C0 = 19'd                   0;
defparam Ur4_n_14_pp.C1 = 19'd               63995;
defparam Ur4_n_14_pp.C2 = 19'd               65148;
defparam Ur4_n_14_pp.C3 = 19'd              129143;
defparam Ur4_n_14_pp.C4 = 19'd               65534;
defparam Ur4_n_14_pp.C5 = 19'd              129529;
defparam Ur4_n_14_pp.C6 = 19'd              130682;
defparam Ur4_n_14_pp.C7 = 19'd              194677;
defparam Ur4_n_14_pp.C8 = 19'd                   0;
defparam Ur4_n_14_pp.C9 = 19'd               63995;
defparam Ur4_n_14_pp.CA = 19'd               65148;
defparam Ur4_n_14_pp.CB = 19'd              129143;
defparam Ur4_n_14_pp.CC = 19'd               65534;
defparam Ur4_n_14_pp.CD = 19'd              129529;
defparam Ur4_n_14_pp.CE = 19'd              130682;
defparam Ur4_n_14_pp.CF = 19'd              194677;


// ---- partial product adder tree ----

wire [32:0] lut_0_bit_0_fill;
wire [32:0] lut_0_bit_1_fill;
wire [32:0] lut_0_bit_2_fill;
wire [32:0] lut_0_bit_3_fill;
wire [32:0] lut_0_bit_4_fill;
wire [32:0] lut_0_bit_5_fill;
wire [32:0] lut_0_bit_6_fill;
wire [32:0] lut_0_bit_7_fill;
wire [32:0] lut_0_bit_8_fill;
wire [32:0] lut_0_bit_9_fill;
wire [32:0] lut_0_bit_10_fill;
wire [32:0] lut_0_bit_11_fill;
wire [32:0] lut_0_bit_12_fill;
wire [32:0] lut_0_bit_13_fill;
wire [32:0] lut_0_bit_14_fill;
assign lut_0_bit_0_fill = {lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18], lut_val_0_n_0_pp[18],  lut_val_0_n_0_pp };
assign lut_0_bit_1_fill = {lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18], lut_val_0_n_1_pp[18],  lut_val_0_n_1_pp, 1'd0 };
assign lut_0_bit_2_fill = {lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18], lut_val_0_n_2_pp[18],  lut_val_0_n_2_pp, 2'd0 };
assign lut_0_bit_3_fill = {lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18], lut_val_0_n_3_pp[18],  lut_val_0_n_3_pp, 3'd0 };
assign lut_0_bit_4_fill = {lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18], lut_val_0_n_4_pp[18],  lut_val_0_n_4_pp, 4'd0 };
assign lut_0_bit_5_fill = {lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18], lut_val_0_n_5_pp[18],  lut_val_0_n_5_pp, 5'd0 };
assign lut_0_bit_6_fill = {lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18], lut_val_0_n_6_pp[18],  lut_val_0_n_6_pp, 6'd0 };
assign lut_0_bit_7_fill = {lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18], lut_val_0_n_7_pp[18],  lut_val_0_n_7_pp, 7'd0 };
assign lut_0_bit_8_fill = {lut_val_0_n_8_pp[18], lut_val_0_n_8_pp[18], lut_val_0_n_8_pp[18], lut_val_0_n_8_pp[18], lut_val_0_n_8_pp[18], lut_val_0_n_8_pp[18],  lut_val_0_n_8_pp, 8'd0 };
assign lut_0_bit_9_fill = {lut_val_0_n_9_pp[18], lut_val_0_n_9_pp[18], lut_val_0_n_9_pp[18], lut_val_0_n_9_pp[18], lut_val_0_n_9_pp[18],  lut_val_0_n_9_pp, 9'd0 };
assign lut_0_bit_10_fill = {lut_val_0_n_10_pp[18], lut_val_0_n_10_pp[18], lut_val_0_n_10_pp[18], lut_val_0_n_10_pp[18],  lut_val_0_n_10_pp, 10'd0 };
assign lut_0_bit_11_fill = {lut_val_0_n_11_pp[18], lut_val_0_n_11_pp[18], lut_val_0_n_11_pp[18],  lut_val_0_n_11_pp, 11'd0 };
assign lut_0_bit_12_fill = {lut_val_0_n_12_pp[18], lut_val_0_n_12_pp[18],  lut_val_0_n_12_pp, 12'd0 };
assign lut_0_bit_13_fill = {lut_val_0_n_13_pp[18],  lut_val_0_n_13_pp, 13'd0 };
assign lut_0_bit_14_fill = { lut_val_0_n_14_pp, 14'd0 };
wire [33:0] tree_0_pp_l_0_n_0_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_0_fill), .bin(lut_0_bit_1_fill), .res(tree_0_pp_l_0_n_0_n) );
defparam Uadd_0_lut_l_0_n_0_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_0_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_1_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_2_fill), .bin(lut_0_bit_3_fill), .res(tree_0_pp_l_0_n_1_n) );
defparam Uadd_0_lut_l_0_n_1_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_1_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_2_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_4_fill), .bin(lut_0_bit_5_fill), .res(tree_0_pp_l_0_n_2_n) );
defparam Uadd_0_lut_l_0_n_2_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_2_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_3_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_3_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_6_fill), .bin(lut_0_bit_7_fill), .res(tree_0_pp_l_0_n_3_n) );
defparam Uadd_0_lut_l_0_n_3_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_3_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_4_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_4_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_8_fill), .bin(lut_0_bit_9_fill), .res(tree_0_pp_l_0_n_4_n) );
defparam Uadd_0_lut_l_0_n_4_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_4_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_5_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_5_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_10_fill), .bin(lut_0_bit_11_fill), .res(tree_0_pp_l_0_n_5_n) );
defparam Uadd_0_lut_l_0_n_5_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_5_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_6_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_6_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_12_fill), .bin(lut_0_bit_13_fill), .res(tree_0_pp_l_0_n_6_n) );
defparam Uadd_0_lut_l_0_n_6_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_6_n.PIPE_DEPTH = 1;
wire [33:0] tree_0_pp_l_0_n_7_n;
sadd_lpm_cen Uadd_0_lut_l_0_n_7_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_0_bit_14_fill), .bin(33'd0), .res(tree_0_pp_l_0_n_7_n) );
defparam Uadd_0_lut_l_0_n_7_n.IN_WIDTH = 33;
defparam Uadd_0_lut_l_0_n_7_n.PIPE_DEPTH = 1;

wire [35:0] tree_0_pp_l_1_n_0_n;
tsadd_lpm_cen Uadd_0_lut_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_0_pp_l_0_n_0_n), .cin(tree_0_pp_l_0_n_1_n), .bin(tree_0_pp_l_0_n_2_n), .res(tree_0_pp_l_1_n_0_n) );
defparam Uadd_0_lut_l_1_n_0_n.IN_WIDTH = 34;
defparam Uadd_0_lut_l_1_n_0_n.PIPE_DEPTH = 1;
wire [35:0] tree_0_pp_l_1_n_1_n;
tsadd_lpm_cen Uadd_0_lut_l_1_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_0_pp_l_0_n_3_n), .cin(tree_0_pp_l_0_n_4_n), .bin(tree_0_pp_l_0_n_5_n), .res(tree_0_pp_l_1_n_1_n) );
defparam Uadd_0_lut_l_1_n_1_n.IN_WIDTH = 34;
defparam Uadd_0_lut_l_1_n_1_n.PIPE_DEPTH = 1;
wire [35:0] tree_0_pp_l_1_n_2_n;
tsadd_lpm_cen Uadd_0_lut_l_1_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_0_pp_l_0_n_6_n), .cin(tree_0_pp_l_0_n_7_n), .bin(34'd0), .res(tree_0_pp_l_1_n_2_n) );
defparam Uadd_0_lut_l_1_n_2_n.IN_WIDTH = 34;
defparam Uadd_0_lut_l_1_n_2_n.PIPE_DEPTH = 1;

wire [37:0] tree_0_pp_l_2_n_0_n;
tsadd_lpm_cen Uadd_0_lut_l_2_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_0_pp_l_1_n_0_n), .cin(tree_0_pp_l_1_n_1_n), .bin(tree_0_pp_l_1_n_2_n), .res(tree_0_pp_l_2_n_0_n) );
defparam Uadd_0_lut_l_2_n_0_n.IN_WIDTH = 36;
defparam Uadd_0_lut_l_2_n_0_n.PIPE_DEPTH = 1;

wire [37:0] lut_val_0_n;
assign lut_val_0_n=tree_0_pp_l_2_n_0_n;


// ---- partial product adder tree ----

wire [32:0] lut_1_bit_0_fill;
wire [32:0] lut_1_bit_1_fill;
wire [32:0] lut_1_bit_2_fill;
wire [32:0] lut_1_bit_3_fill;
wire [32:0] lut_1_bit_4_fill;
wire [32:0] lut_1_bit_5_fill;
wire [32:0] lut_1_bit_6_fill;
wire [32:0] lut_1_bit_7_fill;
wire [32:0] lut_1_bit_8_fill;
wire [32:0] lut_1_bit_9_fill;
wire [32:0] lut_1_bit_10_fill;
wire [32:0] lut_1_bit_11_fill;
wire [32:0] lut_1_bit_12_fill;
wire [32:0] lut_1_bit_13_fill;
wire [32:0] lut_1_bit_14_fill;
assign lut_1_bit_0_fill = {lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18], lut_val_1_n_0_pp[18],  lut_val_1_n_0_pp };
assign lut_1_bit_1_fill = {lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18], lut_val_1_n_1_pp[18],  lut_val_1_n_1_pp, 1'd0 };
assign lut_1_bit_2_fill = {lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18], lut_val_1_n_2_pp[18],  lut_val_1_n_2_pp, 2'd0 };
assign lut_1_bit_3_fill = {lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18], lut_val_1_n_3_pp[18],  lut_val_1_n_3_pp, 3'd0 };
assign lut_1_bit_4_fill = {lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18], lut_val_1_n_4_pp[18],  lut_val_1_n_4_pp, 4'd0 };
assign lut_1_bit_5_fill = {lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18], lut_val_1_n_5_pp[18],  lut_val_1_n_5_pp, 5'd0 };
assign lut_1_bit_6_fill = {lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18], lut_val_1_n_6_pp[18],  lut_val_1_n_6_pp, 6'd0 };
assign lut_1_bit_7_fill = {lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18], lut_val_1_n_7_pp[18],  lut_val_1_n_7_pp, 7'd0 };
assign lut_1_bit_8_fill = {lut_val_1_n_8_pp[18], lut_val_1_n_8_pp[18], lut_val_1_n_8_pp[18], lut_val_1_n_8_pp[18], lut_val_1_n_8_pp[18], lut_val_1_n_8_pp[18],  lut_val_1_n_8_pp, 8'd0 };
assign lut_1_bit_9_fill = {lut_val_1_n_9_pp[18], lut_val_1_n_9_pp[18], lut_val_1_n_9_pp[18], lut_val_1_n_9_pp[18], lut_val_1_n_9_pp[18],  lut_val_1_n_9_pp, 9'd0 };
assign lut_1_bit_10_fill = {lut_val_1_n_10_pp[18], lut_val_1_n_10_pp[18], lut_val_1_n_10_pp[18], lut_val_1_n_10_pp[18],  lut_val_1_n_10_pp, 10'd0 };
assign lut_1_bit_11_fill = {lut_val_1_n_11_pp[18], lut_val_1_n_11_pp[18], lut_val_1_n_11_pp[18],  lut_val_1_n_11_pp, 11'd0 };
assign lut_1_bit_12_fill = {lut_val_1_n_12_pp[18], lut_val_1_n_12_pp[18],  lut_val_1_n_12_pp, 12'd0 };
assign lut_1_bit_13_fill = {lut_val_1_n_13_pp[18],  lut_val_1_n_13_pp, 13'd0 };
assign lut_1_bit_14_fill = { lut_val_1_n_14_pp, 14'd0 };
wire [33:0] tree_1_pp_l_0_n_0_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_0_fill), .bin(lut_1_bit_1_fill), .res(tree_1_pp_l_0_n_0_n) );
defparam Uadd_1_lut_l_0_n_0_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_0_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_1_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_2_fill), .bin(lut_1_bit_3_fill), .res(tree_1_pp_l_0_n_1_n) );
defparam Uadd_1_lut_l_0_n_1_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_1_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_2_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_4_fill), .bin(lut_1_bit_5_fill), .res(tree_1_pp_l_0_n_2_n) );
defparam Uadd_1_lut_l_0_n_2_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_2_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_3_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_3_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_6_fill), .bin(lut_1_bit_7_fill), .res(tree_1_pp_l_0_n_3_n) );
defparam Uadd_1_lut_l_0_n_3_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_3_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_4_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_4_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_8_fill), .bin(lut_1_bit_9_fill), .res(tree_1_pp_l_0_n_4_n) );
defparam Uadd_1_lut_l_0_n_4_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_4_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_5_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_5_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_10_fill), .bin(lut_1_bit_11_fill), .res(tree_1_pp_l_0_n_5_n) );
defparam Uadd_1_lut_l_0_n_5_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_5_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_6_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_6_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_12_fill), .bin(lut_1_bit_13_fill), .res(tree_1_pp_l_0_n_6_n) );
defparam Uadd_1_lut_l_0_n_6_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_6_n.PIPE_DEPTH = 1;
wire [33:0] tree_1_pp_l_0_n_7_n;
sadd_lpm_cen Uadd_1_lut_l_0_n_7_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_1_bit_14_fill), .bin(33'd0), .res(tree_1_pp_l_0_n_7_n) );
defparam Uadd_1_lut_l_0_n_7_n.IN_WIDTH = 33;
defparam Uadd_1_lut_l_0_n_7_n.PIPE_DEPTH = 1;

wire [35:0] tree_1_pp_l_1_n_0_n;
tsadd_lpm_cen Uadd_1_lut_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_1_pp_l_0_n_0_n), .cin(tree_1_pp_l_0_n_1_n), .bin(tree_1_pp_l_0_n_2_n), .res(tree_1_pp_l_1_n_0_n) );
defparam Uadd_1_lut_l_1_n_0_n.IN_WIDTH = 34;
defparam Uadd_1_lut_l_1_n_0_n.PIPE_DEPTH = 1;
wire [35:0] tree_1_pp_l_1_n_1_n;
tsadd_lpm_cen Uadd_1_lut_l_1_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_1_pp_l_0_n_3_n), .cin(tree_1_pp_l_0_n_4_n), .bin(tree_1_pp_l_0_n_5_n), .res(tree_1_pp_l_1_n_1_n) );
defparam Uadd_1_lut_l_1_n_1_n.IN_WIDTH = 34;
defparam Uadd_1_lut_l_1_n_1_n.PIPE_DEPTH = 1;
wire [35:0] tree_1_pp_l_1_n_2_n;
tsadd_lpm_cen Uadd_1_lut_l_1_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_1_pp_l_0_n_6_n), .cin(tree_1_pp_l_0_n_7_n), .bin(34'd0), .res(tree_1_pp_l_1_n_2_n) );
defparam Uadd_1_lut_l_1_n_2_n.IN_WIDTH = 34;
defparam Uadd_1_lut_l_1_n_2_n.PIPE_DEPTH = 1;

wire [37:0] tree_1_pp_l_2_n_0_n;
tsadd_lpm_cen Uadd_1_lut_l_2_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_1_pp_l_1_n_0_n), .cin(tree_1_pp_l_1_n_1_n), .bin(tree_1_pp_l_1_n_2_n), .res(tree_1_pp_l_2_n_0_n) );
defparam Uadd_1_lut_l_2_n_0_n.IN_WIDTH = 36;
defparam Uadd_1_lut_l_2_n_0_n.PIPE_DEPTH = 1;

wire [37:0] lut_val_1_n;
assign lut_val_1_n=tree_1_pp_l_2_n_0_n;


// ---- partial product adder tree ----

wire [32:0] lut_2_bit_0_fill;
wire [32:0] lut_2_bit_1_fill;
wire [32:0] lut_2_bit_2_fill;
wire [32:0] lut_2_bit_3_fill;
wire [32:0] lut_2_bit_4_fill;
wire [32:0] lut_2_bit_5_fill;
wire [32:0] lut_2_bit_6_fill;
wire [32:0] lut_2_bit_7_fill;
wire [32:0] lut_2_bit_8_fill;
wire [32:0] lut_2_bit_9_fill;
wire [32:0] lut_2_bit_10_fill;
wire [32:0] lut_2_bit_11_fill;
wire [32:0] lut_2_bit_12_fill;
wire [32:0] lut_2_bit_13_fill;
wire [32:0] lut_2_bit_14_fill;
assign lut_2_bit_0_fill = {lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18], lut_val_2_n_0_pp[18],  lut_val_2_n_0_pp };
assign lut_2_bit_1_fill = {lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18], lut_val_2_n_1_pp[18],  lut_val_2_n_1_pp, 1'd0 };
assign lut_2_bit_2_fill = {lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18], lut_val_2_n_2_pp[18],  lut_val_2_n_2_pp, 2'd0 };
assign lut_2_bit_3_fill = {lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18], lut_val_2_n_3_pp[18],  lut_val_2_n_3_pp, 3'd0 };
assign lut_2_bit_4_fill = {lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18], lut_val_2_n_4_pp[18],  lut_val_2_n_4_pp, 4'd0 };
assign lut_2_bit_5_fill = {lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18], lut_val_2_n_5_pp[18],  lut_val_2_n_5_pp, 5'd0 };
assign lut_2_bit_6_fill = {lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18], lut_val_2_n_6_pp[18],  lut_val_2_n_6_pp, 6'd0 };
assign lut_2_bit_7_fill = {lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18], lut_val_2_n_7_pp[18],  lut_val_2_n_7_pp, 7'd0 };
assign lut_2_bit_8_fill = {lut_val_2_n_8_pp[18], lut_val_2_n_8_pp[18], lut_val_2_n_8_pp[18], lut_val_2_n_8_pp[18], lut_val_2_n_8_pp[18], lut_val_2_n_8_pp[18],  lut_val_2_n_8_pp, 8'd0 };
assign lut_2_bit_9_fill = {lut_val_2_n_9_pp[18], lut_val_2_n_9_pp[18], lut_val_2_n_9_pp[18], lut_val_2_n_9_pp[18], lut_val_2_n_9_pp[18],  lut_val_2_n_9_pp, 9'd0 };
assign lut_2_bit_10_fill = {lut_val_2_n_10_pp[18], lut_val_2_n_10_pp[18], lut_val_2_n_10_pp[18], lut_val_2_n_10_pp[18],  lut_val_2_n_10_pp, 10'd0 };
assign lut_2_bit_11_fill = {lut_val_2_n_11_pp[18], lut_val_2_n_11_pp[18], lut_val_2_n_11_pp[18],  lut_val_2_n_11_pp, 11'd0 };
assign lut_2_bit_12_fill = {lut_val_2_n_12_pp[18], lut_val_2_n_12_pp[18],  lut_val_2_n_12_pp, 12'd0 };
assign lut_2_bit_13_fill = {lut_val_2_n_13_pp[18],  lut_val_2_n_13_pp, 13'd0 };
assign lut_2_bit_14_fill = { lut_val_2_n_14_pp, 14'd0 };
wire [33:0] tree_2_pp_l_0_n_0_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_0_fill), .bin(lut_2_bit_1_fill), .res(tree_2_pp_l_0_n_0_n) );
defparam Uadd_2_lut_l_0_n_0_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_0_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_1_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_2_fill), .bin(lut_2_bit_3_fill), .res(tree_2_pp_l_0_n_1_n) );
defparam Uadd_2_lut_l_0_n_1_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_1_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_2_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_4_fill), .bin(lut_2_bit_5_fill), .res(tree_2_pp_l_0_n_2_n) );
defparam Uadd_2_lut_l_0_n_2_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_2_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_3_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_3_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_6_fill), .bin(lut_2_bit_7_fill), .res(tree_2_pp_l_0_n_3_n) );
defparam Uadd_2_lut_l_0_n_3_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_3_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_4_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_4_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_8_fill), .bin(lut_2_bit_9_fill), .res(tree_2_pp_l_0_n_4_n) );
defparam Uadd_2_lut_l_0_n_4_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_4_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_5_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_5_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_10_fill), .bin(lut_2_bit_11_fill), .res(tree_2_pp_l_0_n_5_n) );
defparam Uadd_2_lut_l_0_n_5_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_5_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_6_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_6_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_12_fill), .bin(lut_2_bit_13_fill), .res(tree_2_pp_l_0_n_6_n) );
defparam Uadd_2_lut_l_0_n_6_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_6_n.PIPE_DEPTH = 1;
wire [33:0] tree_2_pp_l_0_n_7_n;
sadd_lpm_cen Uadd_2_lut_l_0_n_7_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_2_bit_14_fill), .bin(33'd0), .res(tree_2_pp_l_0_n_7_n) );
defparam Uadd_2_lut_l_0_n_7_n.IN_WIDTH = 33;
defparam Uadd_2_lut_l_0_n_7_n.PIPE_DEPTH = 1;

wire [35:0] tree_2_pp_l_1_n_0_n;
tsadd_lpm_cen Uadd_2_lut_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_2_pp_l_0_n_0_n), .cin(tree_2_pp_l_0_n_1_n), .bin(tree_2_pp_l_0_n_2_n), .res(tree_2_pp_l_1_n_0_n) );
defparam Uadd_2_lut_l_1_n_0_n.IN_WIDTH = 34;
defparam Uadd_2_lut_l_1_n_0_n.PIPE_DEPTH = 1;
wire [35:0] tree_2_pp_l_1_n_1_n;
tsadd_lpm_cen Uadd_2_lut_l_1_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_2_pp_l_0_n_3_n), .cin(tree_2_pp_l_0_n_4_n), .bin(tree_2_pp_l_0_n_5_n), .res(tree_2_pp_l_1_n_1_n) );
defparam Uadd_2_lut_l_1_n_1_n.IN_WIDTH = 34;
defparam Uadd_2_lut_l_1_n_1_n.PIPE_DEPTH = 1;
wire [35:0] tree_2_pp_l_1_n_2_n;
tsadd_lpm_cen Uadd_2_lut_l_1_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_2_pp_l_0_n_6_n), .cin(tree_2_pp_l_0_n_7_n), .bin(34'd0), .res(tree_2_pp_l_1_n_2_n) );
defparam Uadd_2_lut_l_1_n_2_n.IN_WIDTH = 34;
defparam Uadd_2_lut_l_1_n_2_n.PIPE_DEPTH = 1;

wire [37:0] tree_2_pp_l_2_n_0_n;
tsadd_lpm_cen Uadd_2_lut_l_2_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_2_pp_l_1_n_0_n), .cin(tree_2_pp_l_1_n_1_n), .bin(tree_2_pp_l_1_n_2_n), .res(tree_2_pp_l_2_n_0_n) );
defparam Uadd_2_lut_l_2_n_0_n.IN_WIDTH = 36;
defparam Uadd_2_lut_l_2_n_0_n.PIPE_DEPTH = 1;

wire [37:0] lut_val_2_n;
assign lut_val_2_n=tree_2_pp_l_2_n_0_n;


// ---- partial product adder tree ----

wire [32:0] lut_3_bit_0_fill;
wire [32:0] lut_3_bit_1_fill;
wire [32:0] lut_3_bit_2_fill;
wire [32:0] lut_3_bit_3_fill;
wire [32:0] lut_3_bit_4_fill;
wire [32:0] lut_3_bit_5_fill;
wire [32:0] lut_3_bit_6_fill;
wire [32:0] lut_3_bit_7_fill;
wire [32:0] lut_3_bit_8_fill;
wire [32:0] lut_3_bit_9_fill;
wire [32:0] lut_3_bit_10_fill;
wire [32:0] lut_3_bit_11_fill;
wire [32:0] lut_3_bit_12_fill;
wire [32:0] lut_3_bit_13_fill;
wire [32:0] lut_3_bit_14_fill;
assign lut_3_bit_0_fill = {lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18], lut_val_3_n_0_pp[18],  lut_val_3_n_0_pp };
assign lut_3_bit_1_fill = {lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18], lut_val_3_n_1_pp[18],  lut_val_3_n_1_pp, 1'd0 };
assign lut_3_bit_2_fill = {lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18], lut_val_3_n_2_pp[18],  lut_val_3_n_2_pp, 2'd0 };
assign lut_3_bit_3_fill = {lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18], lut_val_3_n_3_pp[18],  lut_val_3_n_3_pp, 3'd0 };
assign lut_3_bit_4_fill = {lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18], lut_val_3_n_4_pp[18],  lut_val_3_n_4_pp, 4'd0 };
assign lut_3_bit_5_fill = {lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18], lut_val_3_n_5_pp[18],  lut_val_3_n_5_pp, 5'd0 };
assign lut_3_bit_6_fill = {lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18], lut_val_3_n_6_pp[18],  lut_val_3_n_6_pp, 6'd0 };
assign lut_3_bit_7_fill = {lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18], lut_val_3_n_7_pp[18],  lut_val_3_n_7_pp, 7'd0 };
assign lut_3_bit_8_fill = {lut_val_3_n_8_pp[18], lut_val_3_n_8_pp[18], lut_val_3_n_8_pp[18], lut_val_3_n_8_pp[18], lut_val_3_n_8_pp[18], lut_val_3_n_8_pp[18],  lut_val_3_n_8_pp, 8'd0 };
assign lut_3_bit_9_fill = {lut_val_3_n_9_pp[18], lut_val_3_n_9_pp[18], lut_val_3_n_9_pp[18], lut_val_3_n_9_pp[18], lut_val_3_n_9_pp[18],  lut_val_3_n_9_pp, 9'd0 };
assign lut_3_bit_10_fill = {lut_val_3_n_10_pp[18], lut_val_3_n_10_pp[18], lut_val_3_n_10_pp[18], lut_val_3_n_10_pp[18],  lut_val_3_n_10_pp, 10'd0 };
assign lut_3_bit_11_fill = {lut_val_3_n_11_pp[18], lut_val_3_n_11_pp[18], lut_val_3_n_11_pp[18],  lut_val_3_n_11_pp, 11'd0 };
assign lut_3_bit_12_fill = {lut_val_3_n_12_pp[18], lut_val_3_n_12_pp[18],  lut_val_3_n_12_pp, 12'd0 };
assign lut_3_bit_13_fill = {lut_val_3_n_13_pp[18],  lut_val_3_n_13_pp, 13'd0 };
assign lut_3_bit_14_fill = { lut_val_3_n_14_pp, 14'd0 };
wire [33:0] tree_3_pp_l_0_n_0_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_0_fill), .bin(lut_3_bit_1_fill), .res(tree_3_pp_l_0_n_0_n) );
defparam Uadd_3_lut_l_0_n_0_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_0_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_1_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_2_fill), .bin(lut_3_bit_3_fill), .res(tree_3_pp_l_0_n_1_n) );
defparam Uadd_3_lut_l_0_n_1_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_1_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_2_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_4_fill), .bin(lut_3_bit_5_fill), .res(tree_3_pp_l_0_n_2_n) );
defparam Uadd_3_lut_l_0_n_2_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_2_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_3_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_3_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_6_fill), .bin(lut_3_bit_7_fill), .res(tree_3_pp_l_0_n_3_n) );
defparam Uadd_3_lut_l_0_n_3_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_3_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_4_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_4_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_8_fill), .bin(lut_3_bit_9_fill), .res(tree_3_pp_l_0_n_4_n) );
defparam Uadd_3_lut_l_0_n_4_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_4_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_5_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_5_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_10_fill), .bin(lut_3_bit_11_fill), .res(tree_3_pp_l_0_n_5_n) );
defparam Uadd_3_lut_l_0_n_5_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_5_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_6_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_6_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_12_fill), .bin(lut_3_bit_13_fill), .res(tree_3_pp_l_0_n_6_n) );
defparam Uadd_3_lut_l_0_n_6_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_6_n.PIPE_DEPTH = 1;
wire [33:0] tree_3_pp_l_0_n_7_n;
sadd_lpm_cen Uadd_3_lut_l_0_n_7_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_3_bit_14_fill), .bin(33'd0), .res(tree_3_pp_l_0_n_7_n) );
defparam Uadd_3_lut_l_0_n_7_n.IN_WIDTH = 33;
defparam Uadd_3_lut_l_0_n_7_n.PIPE_DEPTH = 1;

wire [35:0] tree_3_pp_l_1_n_0_n;
tsadd_lpm_cen Uadd_3_lut_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_3_pp_l_0_n_0_n), .cin(tree_3_pp_l_0_n_1_n), .bin(tree_3_pp_l_0_n_2_n), .res(tree_3_pp_l_1_n_0_n) );
defparam Uadd_3_lut_l_1_n_0_n.IN_WIDTH = 34;
defparam Uadd_3_lut_l_1_n_0_n.PIPE_DEPTH = 1;
wire [35:0] tree_3_pp_l_1_n_1_n;
tsadd_lpm_cen Uadd_3_lut_l_1_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_3_pp_l_0_n_3_n), .cin(tree_3_pp_l_0_n_4_n), .bin(tree_3_pp_l_0_n_5_n), .res(tree_3_pp_l_1_n_1_n) );
defparam Uadd_3_lut_l_1_n_1_n.IN_WIDTH = 34;
defparam Uadd_3_lut_l_1_n_1_n.PIPE_DEPTH = 1;
wire [35:0] tree_3_pp_l_1_n_2_n;
tsadd_lpm_cen Uadd_3_lut_l_1_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_3_pp_l_0_n_6_n), .cin(tree_3_pp_l_0_n_7_n), .bin(34'd0), .res(tree_3_pp_l_1_n_2_n) );
defparam Uadd_3_lut_l_1_n_2_n.IN_WIDTH = 34;
defparam Uadd_3_lut_l_1_n_2_n.PIPE_DEPTH = 1;

wire [37:0] tree_3_pp_l_2_n_0_n;
tsadd_lpm_cen Uadd_3_lut_l_2_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_3_pp_l_1_n_0_n), .cin(tree_3_pp_l_1_n_1_n), .bin(tree_3_pp_l_1_n_2_n), .res(tree_3_pp_l_2_n_0_n) );
defparam Uadd_3_lut_l_2_n_0_n.IN_WIDTH = 36;
defparam Uadd_3_lut_l_2_n_0_n.PIPE_DEPTH = 1;

wire [37:0] lut_val_3_n;
assign lut_val_3_n=tree_3_pp_l_2_n_0_n;


// ---- partial product adder tree ----

wire [32:0] lut_4_bit_0_fill;
wire [32:0] lut_4_bit_1_fill;
wire [32:0] lut_4_bit_2_fill;
wire [32:0] lut_4_bit_3_fill;
wire [32:0] lut_4_bit_4_fill;
wire [32:0] lut_4_bit_5_fill;
wire [32:0] lut_4_bit_6_fill;
wire [32:0] lut_4_bit_7_fill;
wire [32:0] lut_4_bit_8_fill;
wire [32:0] lut_4_bit_9_fill;
wire [32:0] lut_4_bit_10_fill;
wire [32:0] lut_4_bit_11_fill;
wire [32:0] lut_4_bit_12_fill;
wire [32:0] lut_4_bit_13_fill;
wire [32:0] lut_4_bit_14_fill;
assign lut_4_bit_0_fill = {lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18], lut_val_4_n_0_pp[18],  lut_val_4_n_0_pp };
assign lut_4_bit_1_fill = {lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18], lut_val_4_n_1_pp[18],  lut_val_4_n_1_pp, 1'd0 };
assign lut_4_bit_2_fill = {lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18], lut_val_4_n_2_pp[18],  lut_val_4_n_2_pp, 2'd0 };
assign lut_4_bit_3_fill = {lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18], lut_val_4_n_3_pp[18],  lut_val_4_n_3_pp, 3'd0 };
assign lut_4_bit_4_fill = {lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18], lut_val_4_n_4_pp[18],  lut_val_4_n_4_pp, 4'd0 };
assign lut_4_bit_5_fill = {lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18], lut_val_4_n_5_pp[18],  lut_val_4_n_5_pp, 5'd0 };
assign lut_4_bit_6_fill = {lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18], lut_val_4_n_6_pp[18],  lut_val_4_n_6_pp, 6'd0 };
assign lut_4_bit_7_fill = {lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18], lut_val_4_n_7_pp[18],  lut_val_4_n_7_pp, 7'd0 };
assign lut_4_bit_8_fill = {lut_val_4_n_8_pp[18], lut_val_4_n_8_pp[18], lut_val_4_n_8_pp[18], lut_val_4_n_8_pp[18], lut_val_4_n_8_pp[18], lut_val_4_n_8_pp[18],  lut_val_4_n_8_pp, 8'd0 };
assign lut_4_bit_9_fill = {lut_val_4_n_9_pp[18], lut_val_4_n_9_pp[18], lut_val_4_n_9_pp[18], lut_val_4_n_9_pp[18], lut_val_4_n_9_pp[18],  lut_val_4_n_9_pp, 9'd0 };
assign lut_4_bit_10_fill = {lut_val_4_n_10_pp[18], lut_val_4_n_10_pp[18], lut_val_4_n_10_pp[18], lut_val_4_n_10_pp[18],  lut_val_4_n_10_pp, 10'd0 };
assign lut_4_bit_11_fill = {lut_val_4_n_11_pp[18], lut_val_4_n_11_pp[18], lut_val_4_n_11_pp[18],  lut_val_4_n_11_pp, 11'd0 };
assign lut_4_bit_12_fill = {lut_val_4_n_12_pp[18], lut_val_4_n_12_pp[18],  lut_val_4_n_12_pp, 12'd0 };
assign lut_4_bit_13_fill = {lut_val_4_n_13_pp[18],  lut_val_4_n_13_pp, 13'd0 };
assign lut_4_bit_14_fill = { lut_val_4_n_14_pp, 14'd0 };
wire [33:0] tree_4_pp_l_0_n_0_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_0_fill), .bin(lut_4_bit_1_fill), .res(tree_4_pp_l_0_n_0_n) );
defparam Uadd_4_lut_l_0_n_0_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_0_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_1_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_2_fill), .bin(lut_4_bit_3_fill), .res(tree_4_pp_l_0_n_1_n) );
defparam Uadd_4_lut_l_0_n_1_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_1_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_2_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_4_fill), .bin(lut_4_bit_5_fill), .res(tree_4_pp_l_0_n_2_n) );
defparam Uadd_4_lut_l_0_n_2_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_2_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_3_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_3_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_6_fill), .bin(lut_4_bit_7_fill), .res(tree_4_pp_l_0_n_3_n) );
defparam Uadd_4_lut_l_0_n_3_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_3_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_4_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_4_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_8_fill), .bin(lut_4_bit_9_fill), .res(tree_4_pp_l_0_n_4_n) );
defparam Uadd_4_lut_l_0_n_4_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_4_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_5_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_5_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_10_fill), .bin(lut_4_bit_11_fill), .res(tree_4_pp_l_0_n_5_n) );
defparam Uadd_4_lut_l_0_n_5_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_5_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_6_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_6_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_12_fill), .bin(lut_4_bit_13_fill), .res(tree_4_pp_l_0_n_6_n) );
defparam Uadd_4_lut_l_0_n_6_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_6_n.PIPE_DEPTH = 1;
wire [33:0] tree_4_pp_l_0_n_7_n;
sadd_lpm_cen Uadd_4_lut_l_0_n_7_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_4_bit_14_fill), .bin(33'd0), .res(tree_4_pp_l_0_n_7_n) );
defparam Uadd_4_lut_l_0_n_7_n.IN_WIDTH = 33;
defparam Uadd_4_lut_l_0_n_7_n.PIPE_DEPTH = 1;

wire [35:0] tree_4_pp_l_1_n_0_n;
tsadd_lpm_cen Uadd_4_lut_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_4_pp_l_0_n_0_n), .cin(tree_4_pp_l_0_n_1_n), .bin(tree_4_pp_l_0_n_2_n), .res(tree_4_pp_l_1_n_0_n) );
defparam Uadd_4_lut_l_1_n_0_n.IN_WIDTH = 34;
defparam Uadd_4_lut_l_1_n_0_n.PIPE_DEPTH = 1;
wire [35:0] tree_4_pp_l_1_n_1_n;
tsadd_lpm_cen Uadd_4_lut_l_1_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_4_pp_l_0_n_3_n), .cin(tree_4_pp_l_0_n_4_n), .bin(tree_4_pp_l_0_n_5_n), .res(tree_4_pp_l_1_n_1_n) );
defparam Uadd_4_lut_l_1_n_1_n.IN_WIDTH = 34;
defparam Uadd_4_lut_l_1_n_1_n.PIPE_DEPTH = 1;
wire [35:0] tree_4_pp_l_1_n_2_n;
tsadd_lpm_cen Uadd_4_lut_l_1_n_2_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_4_pp_l_0_n_6_n), .cin(tree_4_pp_l_0_n_7_n), .bin(34'd0), .res(tree_4_pp_l_1_n_2_n) );
defparam Uadd_4_lut_l_1_n_2_n.IN_WIDTH = 34;
defparam Uadd_4_lut_l_1_n_2_n.PIPE_DEPTH = 1;

wire [37:0] tree_4_pp_l_2_n_0_n;
tsadd_lpm_cen Uadd_4_lut_l_2_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(tree_4_pp_l_1_n_0_n), .cin(tree_4_pp_l_1_n_1_n), .bin(tree_4_pp_l_1_n_2_n), .res(tree_4_pp_l_2_n_0_n) );
defparam Uadd_4_lut_l_2_n_0_n.IN_WIDTH = 36;
defparam Uadd_4_lut_l_2_n_0_n.PIPE_DEPTH = 1;

wire [37:0] lut_val_4_n;
assign lut_val_4_n=tree_4_pp_l_2_n_0_n;


// ---- final adder tree ----

wire [39:0] fin_atree_l_0_n_0_n;
tsadd_lpm_cen Uadd_cen_l_0_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_val_0_n), .cin(lut_val_1_n), .bin(lut_val_2_n), .res(fin_atree_l_0_n_0_n) );
defparam Uadd_cen_l_0_n_0_n.IN_WIDTH = 38;
defparam Uadd_cen_l_0_n_0_n.PIPE_DEPTH = 1;
wire [39:0] fin_atree_l_0_n_1_n;
tsadd_lpm_cen Uadd_cen_l_0_n_1_n (.clk(clk),  .gclk_en(clk_en), .ain(lut_val_3_n), .cin(lut_val_4_n), .bin(38'd0), .res(fin_atree_l_0_n_1_n) );
defparam Uadd_cen_l_0_n_1_n.IN_WIDTH = 38;
defparam Uadd_cen_l_0_n_1_n.PIPE_DEPTH = 1;

wire [41:0] fin_atree_l_1_n_0_n;
tsadd_lpm_cen Uadd_cen_l_1_n_0_n (.clk(clk),  .gclk_en(clk_en), .ain(fin_atree_l_0_n_0_n), .cin(fin_atree_l_0_n_1_n), .bin(40'd0), .res(fin_atree_l_1_n_0_n) );
defparam Uadd_cen_l_1_n_0_n.IN_WIDTH = 40;
defparam Uadd_cen_l_1_n_0_n.PIPE_DEPTH = 1;

wire [41:0] mac_res;
assign mac_res=fin_atree_l_1_n_0_n;
wire [40:0] atree_res;
mac_tl Umtl (.clk(clk), 
             .data_in(mac_res),
             .data_out(atree_res));
defparam Umtl.DATA_WIDTH = 41;

// ---- Adder Tree Complete ---- 
wire [35:0] fir_int_res;
assign fir_int_res = atree_res [35:0];

// ---- Limiting Precision ---- 
wire [35:0]fir_int_res_fill;
assign fir_int_res_fill =  fir_int_res[35 :0];
parameter TOT_WIDTH = ACCUM_WIDTH;
assign fir_result = fir_int_res_fill[TOT_WIDTH-1:LSB_RM];


wire pre_rdy;
assign rdy_to_ld = pre_rdy;
assign done = done_int;
par_ctrl Uctrl(.rst(rst),
		.clk(clk),
		.clk_en(clk_en),
		.done(done_int),
		.rdy_int(rdy_int),
		.rdy_to_ld(pre_rdy));
defparam Uctrl.REG_LEN = 7;
defparam Uctrl.REG_BIT = 3;
defparam Uctrl.CH_WIDTH =0; 
defparam Uctrl.NUM_CH =1; 
endmodule
