//Danny Cao

//4-9-2010

//INT-5

//Contest 4

//Enloe High

//Potter

 

#include<conio.h>

#include<graphics.h>

#include<iostream.h>

#include<stdlib.h>

#include<fstream.h>

#include<math.h>

#include<string.h>

#include<dos.h>

#include<ctype.h>

 

void main(){

            for(int count=0;count<5;count++){

                        clrscr();

                        cout<<count+1<<"."<<endl;

                        char string[20];

                        for(int count3=0;count3<20;count3++){

                                    string[count3]=NULL;

                        }

                        string[0]='A';

                        string[1]='B';

                        string[2]='C';

                        string[3]='D';

                        string[4]='E';

                        char input[5];

                        char typ;

                        cin>>typ;

                        int tmp2=0;

                        while(tmp2==0){

                                    int length=strlen(string);

                                    if(typ=='S'){

                                                cin>>input;

                                                if((input[0]=='P')&&(input[1]=='O')&&(input[2]=='P')){

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                }

                                                if((input[0]=='P')&&(input[1]=='S')&&(input[2]=='H')){

                                                            char tmp[20];

                                                            for(count3=0;count3<20;count3++){

                                                                        tmp[count3]=NULL;

                                                            }

                                                            tmp[0]=input[3];

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='D')&&(input[1]=='U')&&(input[2]=='P')){

                                                            char tmp[20];

                                                            strncpy(tmp,string,(int)input[3]-48);

                                                            tmp[(int)input[3]-48]=NULL;

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='S')&&(input[1]=='W')&&(input[2]=='P')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            char tmp3[20];

                                                            strncpy(tmp2,string,(int)input[3]-48);

                                                            tmp2[(int)input[3]-48]=NULL;

                                                            strrev(string);

                                                            strncpy(tmp3,string,(int)input[3]-48);

                                                            tmp3[(int)input[3]-48]=NULL;

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strrev(string);

                                                            strrev(tmp3);

                                                            length=strlen(string);

                                                            for(count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strcpy(tmp,string);

                                                            strcpy(string,tmp3);

                                                            strcat(string,tmp);

                                                            strcat(string,tmp2);

                                                }

                                                if((input[0]=='S')&&(input[1]=='W')&&(input[2]=='H')){

                                                            typ='Q';

                                                }

                                                if((input[0]=='C')&&(input[1]=='R')&&(input[2]=='C')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            strrev(string);

                                                            strncpy(tmp,string,(int)input[3]-48);

                                                            tmp[(int)input[3]-48]=NULL;

                                                            strrev(string);

                                                            strrev(tmp);

                                                            strcpy(tmp2,string);

                                                            strcpy(string,tmp);

                                                            strcat(string,tmp2);

                                                            length=strlen(string);

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                }

                                                if((input[0]=='P')&&(input[1]=='I')&&(input[2]=='N')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            for(count3=0;count3<20;count3++){

                                                                        tmp2[count3]=NULL;

                                                            }

                                                            tmp2[0]=input[3];

                                                            strcpy(tmp,string);

                                                            strcpy(string,tmp2);

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='P')&&(input[1]=='R')&&(input[2]=='T')){

                                                            cout<<endl;

                                                            for(int count2=(int)input[3]-48;count2>0;count2--){

                                                                        cout<<string[length-count2]<<" ";

                                                            }

                                                            getch();

                                                            tmp2=1;

                                                }

                                    }

                                    else

                                    if(typ=='Q'){

                                                cin>>input;

                                                if((input[0]=='P')&&(input[1]=='O')&&(input[2]=='P')){

                                                            strrev(string);

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strrev(string);

                                                }

                                                if((input[0]=='P')&&(input[1]=='S')&&(input[2]=='H')){

                                                            char tmp[20];

                                                            for(count3=0;count3<20;count3++){

                                                                        tmp[count3]=NULL;

                                                            }

                                                            tmp[0]=input[3];

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='D')&&(input[1]=='U')&&(input[2]=='P')){

                                                            char tmp[20];

                                                            strncpy(tmp,string,(int)input[3]-48);

                                                            tmp[(int)input[3]-48]=NULL;

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='S')&&(input[1]=='W')&&(input[2]=='P')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            char tmp3[20];

                                                            strncpy(tmp2,string,(int)input[3]-48);

                                                            tmp2[(int)input[3]-48]=NULL;

                                                            strrev(string);

                                                            strncpy(tmp3,string,(int)input[3]-48);

                                                            tmp3[(int)input[3]-48]=NULL;

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strrev(string);

                                                            strrev(tmp3);

                                                            length=strlen(string);

                                                            for(count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strcpy(tmp,string);

                                                            strcpy(string,tmp3);

                                                            strcat(string,tmp);

                                                            strcat(string,tmp2);

                                                }

                                                if((input[0]=='S')&&(input[1]=='W')&&(input[2]=='H')){

                                                            typ='S';

                                                }

                                                if((input[0]=='C')&&(input[1]=='R')&&(input[2]=='C')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            strncpy(tmp,string,(int)input[3]-48);

                                                            tmp[(int)input[3]-48]=NULL;

                                                            strcat(string,tmp);

                                                            strrev(string);

                                                            length=strlen(string);

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        string[length-count2-1]=NULL;

                                                            }

                                                            strrev(string);

                                                }

                                                if((input[0]=='P')&&(input[1]=='I')&&(input[2]=='N')){

                                                            char tmp[20];

                                                            char tmp2[20];

                                                            for(count3=0;count3<20;count3++){

                                                                        tmp2[count3]=NULL;

                                                            }

                                                            tmp2[0]=input[3];

                                                            strcpy(tmp,string);

                                                            strcpy(string,tmp2);

                                                            strcat(string,tmp);

                                                }

                                                if((input[0]=='P')&&(input[1]=='R')&&(input[2]=='T')){

                                                            cout<<endl;

                                                            for(int count2=0;count2<(int)input[3]-48;count2++){

                                                                        cout<<string[count2]<<" ";

                                                            }

                                                            getch();

                                                            tmp2=1;

                                                }

                                    }

                        }

            }

}