#include <QtCore/qhash.h>
#ifndef QHASH_H
template < typename Key, typename T > class QHash{
   /* Some contents are skipped to improve readability */
   public: class const_iterator{
      private: struct QHashData::Node* i;
      public: typedef struct std::bidirectional_iterator_tag iterator_category;
      public: typedef ptrdiff_t difference_type;
      public: typedef T value_type;
      public: typedef T const * pointer;
      public: typedef T& reference;
      public: inline operator class QHashNode < Key, T >* () const
      public: inline const_iterator();
      public: explicit inline const_iterator(void* node);
#ifdef QT_STRICT_ITERATORS
#else
      public: inline const_iterator(class QHash::iterator const & o);
#endif
      public: inline Key const & key() const
      public: inline T& value() const
      public: inline T& operator *() const
      public: inline T const * operator ->() const
      public: inline bool operator ==(class QHash::const_iterator const & o) const
      public: inline bool operator !=(class QHash::const_iterator const & o) const
      public: inline class QHash::const_iterator& operator ++();
      public: inline class QHash::const_iterator operator ++(int);
      public: inline class QHash::const_iterator& operator --();
      public: inline class QHash::const_iterator operator --(int);
      public: inline class QHash::const_iterator operator +(int j) const
      public: inline class QHash::const_iterator operator -(int j) const
      public: inline class QHash::const_iterator& operator +=(int j);
      public: inline class QHash::const_iterator& operator -=(int j);
      private: inline operator bool () const
   };
   /* ... */
};
#endif // QHASH_H