template<typename T> class set{
set();
set(set &in other);
set& opAssign(set &in other);
void SetDirectcomp(bool yesno);
int size();
void clear();
bool empty();
void insert(T &in value);
void erase(T &in value);
bool contains(T &in value);
set_iterator<T> begin();
set_iterator<T> end();
bool erase(const set_iterator<T> &in iterator);
int erase(const set_iterator<T> &in iterator_range_begin, const set_iterator<T> &in iterator_range_end);
set_iterator<T> find_iterator(const T &in value);
};