deque version