{ (isEmpty)(lPopped)(lItem)(rPopped)(rItem) [lPopped] | dequeLPopped } { (isEmpty)(lPopped)(lItem)(rPopped)(rItem) [lItem] | dequeLItem } { (isEmpty)(lPopped)(lItem)(rPopped)(rItem) [rPopped] | dequeRPopped } { (isEmpty)(lPopped)(lItem)(rPopped)(rItem) [rItem] | dequeRItem }