1namespace std {
2  template <typename, typename Container> struct normal_iterator {
3    normal_iterator() {}
4
5    template <typename I>
6    normal_iterator(normal_iterator<I, typename Container::iterator>) {}
7  };
8
9  template <typename pointer> struct basic_string {
10    typedef normal_iterator<pointer, basic_string> iterator;
11  };
12
13  typedef basic_string<wchar_t *> wstring;
14}
15