 
`include "D_trigger_2_1.v"
`include "SPLIT_f_ZK_1_4.v"
`include "SPLIT_f_ZK_1_2.v"
`timescale 1ns/1ns
module shift_rg(NXUin_1_D,NXUin_2_CP,NXUout_1_S_out,NXUout_2_P_Q0,
NXUout_3_P_Q1,NXUout_4_P_Q2,NXUout_5_P_Q3);
input NXUin_1_D,NXUin_2_CP;
output NXUout_1_S_out,NXUout_2_P_Q0,NXUout_3_P_Q1,NXUout_4_P_Q2,NXUout_5_P_Q3;
wire NXU_s1,NXU_s13;
wire NXU_s4,NXU_s11;
wire NXU_s3,NXU_s9;
wire NXU_s2,NXU_s7;
wire NXU_s28;
wire NXU_s29;
wire NXU_s30;
wire NXU_s31;
wire NXU_s32;
wire NXU_s6;
assign NXU_s13 = NXUin_1_D;
assign NXU_s28 = NXUin_2_CP;
D_trigger_2_1 NXUmap1(.in_1(NXU_s1),.in_2(NXU_s13),.out_1(NXU_s32));
D_trigger_2_1 NXUmap2(.in_1(NXU_s4),.in_2(NXU_s11),.out_1(NXU_s31));
D_trigger_2_1 NXUmap3(.in_1(NXU_s3),.in_2(NXU_s9),.out_1(NXU_s30));
D_trigger_2_1 NXUmap4(.in_1(NXU_s2),.in_2(NXU_s7),.out_1(NXU_s29));
SPLIT_f_ZK_1_4 NXUmap5(.in_1(NXU_s28),.out_1(NXU_s1),.out_2(NXU_s2),
.out_3(NXU_s3),.out_4(NXU_s4));
SPLIT_f_ZK_1_2 NXUmap6(.in_1(NXU_s29),.out_1(NXU_s5),.out_2(NXU_s6));
SPLIT_f_ZK_1_2 NXUmap7(.in_1(NXU_s30),.out_1(NXU_s7),.out_2(NXU_s8));
SPLIT_f_ZK_1_2 NXUmap8(.in_1(NXU_s31),.out_1(NXU_s9),.out_2(NXU_s10));
SPLIT_f_ZK_1_2 NXUmap9(.in_1(NXU_s32),.out_1(NXU_s11),.out_2(NXU_s12));
assign NXUout_1_S_out = NXU_s5;
assign NXUout_2_P_Q0 = NXU_s12;
assign NXUout_3_P_Q1 = NXU_s10;
assign NXUout_4_P_Q2 = NXU_s8;
assign NXUout_5_P_Q3 = NXU_s6;
endmodule

