sig
type 'a deque
val create : unit -> 'a Deque.deque
val is_empty : 'a Deque.deque -> bool
val insert_head : 'a -> 'a Deque.deque -> unit
val insert_tail : 'a -> 'a Deque.deque -> unit
val remove_head : 'a Deque.deque -> 'a
val remove_tail : 'a Deque.deque -> 'a
val iterate : ('a -> unit) -> 'a Deque.deque -> unit
end