#include <set>
#include <iostream>

using namespace std;

class RInteger {
private:
        int i;
public:
        RInteger(int v) { i = v; }
        friend ostream& operator <<(ostream& o, const RInteger &ri);
        inline friend bool operator <(const RInteger a, const RInteger b);
};

ostream&
operator <<(ostream& o, const RInteger &ri)
{
        cout << ri.i;
        return o;
}

inline bool
operator <(const RInteger a, const RInteger b)
{
        return (b.i < a.i);
}

main(int argc, char *argv[])
{
        set <RInteger> s;
        int i;
        int rand = 10;

        for (i = 0; i < 1000000; i++) {
                s.insert(RInteger(rand));
                rand = rand * 1103515245 + 12345;
        }
        set<RInteger>::const_iterator si;
        for (i = 0, si = s.begin(); si != s.end(); i++, si++)
                if (i % 100000 == 0)
                        cout << *si << '\n';
        return 0;
}