FIFO
add Double_FIFO