#include<iostream>
#include<queue>
#include<string>
#include<cmath>
using namespace std;

struct complex 
{
	int shi;
	int fu;
	complex(int a, int b) :shi(a), fu(b) {}

	friend  bool operator <(complex a, complex b)
	{
		return pow(a.shi,2)+pow(a.fu,2) < pow(b.shi,2)+pow(b.fu,2);
	}
};

int main()
{
	int N;
	scanf("%d", &N);
	string str;
	priority_queue<complex>q;
	while (N--)
	{
		cin>>str;
		if (str == "Pop")
		{
			if (q.empty() == false)
			{
				complex c = q.top();
				q.pop();
				printf("%d+i%d\n", c.shi, c.fu);
				printf("SIZE = %d\n", q.size());
			}
			else
			{
				cout << "empty\n";
			}
		}
		else if (str == "Insert")
		{
			int a, b;
			scanf("%d+i%d", &a, &b);
			q.push(complex(a, b));
			printf("SIZE = %d\n", q.size());
		}
	}
}