
module BehShift ( QOut, DIn, ShiftEna, ClkIn, ClrIn );
  input DIn, ShiftEna, ClkIn, ClrIn;
  output QOut;
  wire   n1, n2, n3, n5;
  wire   [3:0] QReg;

  EDFCNQD1 \QReg_reg[0]  ( .D(DIn), .E(ShiftEna), .CP(ClkIn), .CDN(n1), .Q(
        QReg[0]) );
  EDFCNQD1 \QReg_reg[1]  ( .D(QReg[0]), .E(ShiftEna), .CP(ClkIn), .CDN(n1), 
        .Q(QReg[1]) );
  EDFCNQD1 \QReg_reg[2]  ( .D(QReg[1]), .E(ShiftEna), .CP(ClkIn), .CDN(n1), 
        .Q(QReg[2]) );
  EDFCNQD1 \QReg_reg[3]  ( .D(QReg[2]), .E(ShiftEna), .CP(ClkIn), .CDN(n1), 
        .Q(QReg[3]) );
  INVD1 U2 ( .I(ClrIn), .ZN(n1) );
  EDFCND1 \QReg_reg[4]  ( .D(QReg[3]), .E(ShiftEna), .CP(ClkIn), .CDN(n1), .Q(
        n2) );
  CKBD0 U3 ( .CLK(n5), .C(n3) );
  CKND16 U4 ( .CLK(n3), .CN(QOut) );
  CKND0 U5 ( .CLK(n2), .CN(n5) );
endmodule

