/// SPOJ – Ada and Queue
#include <bits/stdc++.h>
#define X first
#define Y second
#define pb push_back
using namespace std;
typedef long long ll;
typedef pair <int,int> ii;
typedef pair <int,ii> i_ii;
typedef vector <int> vi;
typedef vector <ii> vii;
const int maxn=102;
const ll MOD=1000000007;
int Q,N;
string s;
bool rev=false;
deque <int> dq;
int main()
{
// freopen("nhap.inp", "r", stdin);
cin >> Q;
while (Q--)
{
cin >> s;
if (s[0] == 't')
{
scanf("%d",&N);
if (!rev) dq.push_front(N);
else dq.push_back(N);
}
if (s[0] == 'p')
{
scanf("%d",&N);
if (!rev) dq.push_back(N);
else dq.push_front(N);
}
if (s[0] == 'b')
{
if (dq.empty())
{
printf("No job for Ada?\n");
continue;
}
if (!rev)
{
printf("%d\n",dq.back());
dq.pop_back();
}
else {
printf("%d\n",dq.front());
dq.pop_front();
}
}
if (s[0] == 'f')
{
if (dq.empty())
{
printf("No job for Ada?\n");
continue;
}
if (!rev)
{
printf("%d\n",dq.front());
dq.pop_front();
}
else {
printf("%d\n",dq.back());
dq.pop_back();
}
}
if (s[0] == 'r')
rev = 1 - rev;
}
return 0;
}
Ly8vIFNQT0og4oCTIEFkYSBhbmQgUXVldWUKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgWCBmaXJzdAojZGVmaW5lIFkgc2Vjb25kCiNkZWZpbmUgcGIgcHVzaF9iYWNrCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwp0eXBlZGVmIHBhaXIgPGludCxpbnQ+IGlpOwp0eXBlZGVmIHBhaXIgPGludCxpaT4gaV9paTsKdHlwZWRlZiB2ZWN0b3IgPGludD4gdmk7CnR5cGVkZWYgdmVjdG9yIDxpaT4gdmlpOwoKY29uc3QgaW50IG1heG49MTAyOwpjb25zdCBsbCBNT0Q9MTAwMDAwMDAwNzsKCmludCBRLE47CnN0cmluZyBzOwpib29sIHJldj1mYWxzZTsKZGVxdWUgPGludD4gZHE7CgppbnQgbWFpbigpCnsKLy8gICAgZnJlb3BlbigibmhhcC5pbnAiLCAiciIsIHN0ZGluKTsKICAgIGNpbiA+PiBROwogICAgd2hpbGUgKFEtLSkKICAgIHsKICAgICAgICBjaW4gPj4gczsKICAgICAgICBpZiAoc1swXSA9PSAndCcpCiAgICAgICAgewogICAgICAgICAgICBzY2FuZigiJWQiLCZOKTsKICAgICAgICAgICAgaWYgKCFyZXYpICAgIGRxLnB1c2hfZnJvbnQoTik7CiAgICAgICAgICAgIGVsc2UgZHEucHVzaF9iYWNrKE4pOwogICAgICAgIH0KICAgICAgICBpZiAoc1swXSA9PSAncCcpCiAgICAgICAgewogICAgICAgICAgICBzY2FuZigiJWQiLCZOKTsKICAgICAgICAgICAgaWYgKCFyZXYpICAgIGRxLnB1c2hfYmFjayhOKTsKICAgICAgICAgICAgZWxzZSBkcS5wdXNoX2Zyb250KE4pOwogICAgICAgIH0KICAgICAgICBpZiAoc1swXSA9PSAnYicpCiAgICAgICAgewogICAgICAgICAgICBpZiAoZHEuZW1wdHkoKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcHJpbnRmKCJObyBqb2IgZm9yIEFkYT9cbiIpOwogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCFyZXYpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHByaW50ZigiJWRcbiIsZHEuYmFjaygpKTsKICAgICAgICAgICAgICAgIGRxLnBvcF9iYWNrKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICBwcmludGYoIiVkXG4iLGRxLmZyb250KCkpOwogICAgICAgICAgICAgICAgZHEucG9wX2Zyb250KCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKHNbMF0gPT0gJ2YnKQogICAgICAgIHsKICAgICAgICAgICAgaWYgKGRxLmVtcHR5KCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHByaW50ZigiTm8gam9iIGZvciBBZGE/XG4iKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghcmV2KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBwcmludGYoIiVkXG4iLGRxLmZyb250KCkpOwogICAgICAgICAgICAgICAgZHEucG9wX2Zyb250KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICBwcmludGYoIiVkXG4iLGRxLmJhY2soKSk7CiAgICAgICAgICAgICAgICBkcS5wb3BfYmFjaygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChzWzBdID09ICdyJykKICAgICAgICAgICAgcmV2ID0gMSAtIHJldjsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==