#include<iostream>
using namespace std;
class Stack{
private:
int top;
int capacity;
int size;
string *arr;
public:
Stack(int n){
top=-1;
capacity=n;
size=0;
arr=new string[capacity];
}
bool isempty()
{
if(top==-1)
{
return true;
}
else return false;
}
string push(Stack *s,string a)
{
s->top++;
s->arr[s->top]=a;
s->size++;
return arr[s->top];
}
string pop(Stack *s)
{
if(isempty())
{
return "Ignored";
}
else{
string b=s->arr[s->top];
s->top--;
s->size--;
return b;
}
}
string printtop()
{
if(top==-1)
{
return "Ignored";
}
else{
string a=arr[top];
return a;
}
}
int gettop()
{
return top;
}
int sizestack(Stack *s){
return s->size;
}
void print()
{
for(int i=top;i>=0;i--)
{
cout<<arr[i]<<endl;
}
}
};
int main()
{
int kase=1,n;
string hold,in="http://w...content-available-to-author-only...c.bd";
Stack b(100),f(100);
b.push(&b,in);
while(cin>>in)
{ if(in=="QUIT") break;
if(in=="VISIT")
{
cin>>in;
cout<<in<<endl;
b.push(&b,in);
while(!f.isempty()){
f.pop(&f);
}
}
else if(in=="BACK" && b.sizestack(&b)>1)
{
hold=b.printtop();
b.pop(&b);
cout<<b.printtop()<<endl;
f.push(&f,hold);
}
else if(in=="FORWARD" && !f.isempty())
{
b.push(&b,f.printtop());
cout<<f.printtop()<<endl;
f.pop(&f);
}
else
{
cout<<"Ignored\n";
}
}
}
CiNpbmNsdWRlPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIFN0YWNrewpwcml2YXRlOgogICAgaW50IHRvcDsKICAgIGludCBjYXBhY2l0eTsKICAgIGludCBzaXplOwogICAgc3RyaW5nICphcnI7CnB1YmxpYzoKICAgIFN0YWNrKGludCBuKXsKICAgICAgICB0b3A9LTE7CiAgICAgICAgY2FwYWNpdHk9bjsKICAgICAgICBzaXplPTA7CiAgICAgICAgYXJyPW5ldyBzdHJpbmdbY2FwYWNpdHldOwogICAgfQogICAgYm9vbCBpc2VtcHR5KCkKICAgIHsKICAgICAgICBpZih0b3A9PS0xKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGVsc2UgcmV0dXJuIGZhbHNlOwogICAgfQogICAgc3RyaW5nIHB1c2goU3RhY2sgKnMsc3RyaW5nIGEpCiAgICB7CgogICAgICAgIHMtPnRvcCsrOwogICAgICAgIHMtPmFycltzLT50b3BdPWE7CiAgICAgICAgcy0+c2l6ZSsrOwogICAgICAgIHJldHVybiBhcnJbcy0+dG9wXTsKCiAgICB9CiAgICBzdHJpbmcgcG9wKFN0YWNrICpzKQogICAgewogICAgICAgIGlmKGlzZW1wdHkoKSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiAiSWdub3JlZCI7CiAgICAgICAgfQogICAgICAgIGVsc2V7CiAgICAgICAgc3RyaW5nIGI9cy0+YXJyW3MtPnRvcF07CiAgICAgICAgcy0+dG9wLS07CiAgICAgICAgcy0+c2l6ZS0tOwogICAgICAgIHJldHVybiBiOwogICAgICAgIH0KICAgIH0KICAgIHN0cmluZyBwcmludHRvcCgpCiAgICB7CiAgICAgICAgaWYodG9wPT0tMSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiAiSWdub3JlZCI7CiAgICAgICAgfQogICAgICAgIGVsc2V7CiAgICAgICAgICAgIHN0cmluZyBhPWFyclt0b3BdOwogICAgICAgICAgICByZXR1cm4gYTsKICAgICAgICB9CiAgICB9CiAgICBpbnQgZ2V0dG9wKCkKICAgIHsKICAgICAgICByZXR1cm4gdG9wOwogICAgfQogICAgaW50IHNpemVzdGFjayhTdGFjayAqcyl7CiAgICAgICAgcmV0dXJuIHMtPnNpemU7CiAgICB9CiAgICB2b2lkIHByaW50KCkKICAgIHsKICAgICAgICBmb3IoaW50IGk9dG9wO2k+PTA7aS0tKQogICAgICAgIHsKICAgICAgICAgICAgY291dDw8YXJyW2ldPDxlbmRsOwogICAgICAgIH0KICAgIH0KfTsKCmludCBtYWluKCkKewogICAgaW50IGthc2U9MSxuOwogICAgc3RyaW5nIGhvbGQsaW49Imh0dHA6Ly93Li4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5jLmJkIjsKICAgIFN0YWNrIGIoMTAwKSxmKDEwMCk7CiAgICBiLnB1c2goJmIsaW4pOwogICAgd2hpbGUoY2luPj5pbikKICAgIHsgICAgaWYoaW49PSJRVUlUIikgYnJlYWs7CiAgICAgICAgIGlmKGluPT0iVklTSVQiKQogICAgICAgICB7CiAgICAgICAgICAgICBjaW4+PmluOwogICAgICAgICAgICAgY291dDw8aW48PGVuZGw7CiAgICAgICAgICAgICBiLnB1c2goJmIsaW4pOwogICAgICAgICAgICAgd2hpbGUoIWYuaXNlbXB0eSgpKXsKICAgICAgICAgICAgICAgICAgICBmLnBvcCgmZik7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZihpbj09IkJBQ0siICYmIGIuc2l6ZXN0YWNrKCZiKT4xKQogICAgICAgICB7CiAgICAgICAgICAgICBob2xkPWIucHJpbnR0b3AoKTsKICAgICAgICAgICAgIGIucG9wKCZiKTsKICAgICAgICAgICAgIGNvdXQ8PGIucHJpbnR0b3AoKTw8ZW5kbDsKICAgICAgICAgICAgIGYucHVzaCgmZixob2xkKTsKICAgICAgICAgfQogICAgICAgICBlbHNlIGlmKGluPT0iRk9SV0FSRCIgJiYgIWYuaXNlbXB0eSgpKQogICAgICAgICB7CiAgICAgICAgICAgICBiLnB1c2goJmIsZi5wcmludHRvcCgpKTsKICAgICAgICAgICAgIGNvdXQ8PGYucHJpbnR0b3AoKTw8ZW5kbDsKICAgICAgICAgICAgZi5wb3AoJmYpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UKICAgICAgICAgewogICAgICAgICAgICAgY291dDw8Iklnbm9yZWRcbiI7CiAgICAgICAgIH0KICAgIH0KfQo=