#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;
for(scanf("%d",&n);kase<=n;kase++)
{
string hold,in="http://w...content-available-to-author-only...j.com/";
Stack b(100),f(100);
printf("Case %d:\n",kase);
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+PTA7aS0tKQogICAgICAgIHsKICAgICAgICAgICAgY291dDw8YXJyW2ldPDxlbmRsOwogICAgICAgIH0KICAgIH0KfTsKCmludCBtYWluKCkKewogICAgaW50IGthc2U9MSxuOwogICAgZm9yKHNjYW5mKCIlZCIsJm4pO2thc2U8PW47a2FzZSsrKQogICAgewogICAgICAgc3RyaW5nIGhvbGQsaW49Imh0dHA6Ly93Li4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5qLmNvbS8iOwogICAgICAgU3RhY2sgYigxMDApLGYoMTAwKTsKICAgICAgIHByaW50ZigiQ2FzZSAlZDpcbiIsa2FzZSk7CiAgICAgICBiLnB1c2goJmIsaW4pOwogICAgICAgIHdoaWxlKGNpbj4+aW4pCiAgICAgICAgeyAgICBpZihpbj09IlFVSVQiKSBicmVhazsKICAgICAgICAgICAgIGlmKGluPT0iVklTSVQiKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGNpbj4+aW47CiAgICAgICAgICAgICAgICAgY291dDw8aW48PGVuZGw7CiAgICAgICAgICAgICAgICAgYi5wdXNoKCZiLGluKTsKICAgICAgICAgICAgICAgICB3aGlsZSghZi5pc2VtcHR5KCkpewogICAgICAgICAgICAgICAgICAgICAgICBmLnBvcCgmZik7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZihpbj09IkJBQ0siICYmIGIuc2l6ZXN0YWNrKCZiKT4xKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGhvbGQ9Yi5wcmludHRvcCgpOwogICAgICAgICAgICAgICAgIGIucG9wKCZiKTsKICAgICAgICAgICAgICAgICBjb3V0PDxiLnByaW50dG9wKCk8PGVuZGw7CiAgICAgICAgICAgICAgICAgZi5wdXNoKCZmLGhvbGQpOwogICAgICAgICAgICAgfQoKCiAgICAgICAgICAgICBlbHNlIGlmKGluPT0iRk9SV0FSRCIgJiYgIWYuaXNlbXB0eSgpKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGIucHVzaCgmYixmLnByaW50dG9wKCkpOwogICAgICAgICAgICAgICAgIGNvdXQ8PGYucHJpbnR0b3AoKTw8ZW5kbDsKICAgICAgICAgICAgICAgIGYucG9wKCZmKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBjb3V0PDwiSWdub3JlZFxuIjsKICAgICAgICAgICAgIH0KICAgICAgICB9CgoKICAgIH0KCn0K