#include <iostream>
#include <set>
#include <algorithm>

const int values[] = { 2,4,5,6, 6, 6, 9, 16,16,18, 70, 99, 104, 108};
const int NVALS = sizeof values / sizeof (int);

int main()
{
	using namespace std;
	
	typedef set<int>::iterator SII;			// "set of int iterator"
	typedef multiset<int>::iterator MII;	// "multiset of int iterator"
	typedef pair<SII, bool> InsertData;		// return type for one form
											// of set::insert()
	set<int> s;
	set<set<int> *>s2;
	s2.insert(&s);
	s2.insert(100);

	set<multiset<int> >s3;
	s3.insert(s);

	ms.insert(values, values + NVALS);
	ms.insert(++s.begin(), --s.end());
	MII m9 = ms.begin();
	m9 += 5;
	
	return 0;
}	