#ifndef TINYSTL_DEQUE
#define TINYSTL_DEQUE

namespace std {

  template<class T>
  class deque {
  public:
    
    typedef T* iterator;
    typedef T* const_iterator;
    typedef int size_type;
    
    deque () {}
    ~deque () {}
    
    T& operator[] (size_type idx) {}
    
    void assign (size_type num, const T& value) {}
    
    void resize(size_type num) {}
    void resize(size_type num, const T& value) {}
    
    T& front () {}
    T& back () {}
    
    iterator begin () {}
    iterator end () {}
    const_iterator begin () const {}
    const_iterator end () const {}
    
    size_type size () const {}
    bool empty () const {}
    size_type max_size () const {}

    void pop_front () {}
    void pop_back () {}
    
    void push_front (const T& value) {}
    void push_back (const T& value) {}
    
  };

}

#endif
