#Dan Pan

#Senior 3 Division

#Cranbrook Kingswood School

#ACSL 3 - Strings

open I,"Strings.txt";chomp(@I=<I>);

for(@I){

  @A=split/\//;@Z=split//,pop@A;

  while(@A){

    ($W,$X)=split/-/,shift@A;

    for($W){

      /LS/  &&do{@Z=(@Z[$X..@Z-1],(split//,'#'x$X))};

      /RS/  &&do{@Z=((split//,'#'x$X),@Z[0..@Z-$X-1])};

      /LC/  &&do{@Z=@Z[$X..@Z-1,0..$X-1]};

      /RC/  &&do{@Z=@Z[@Z-$X..@Z-1,0..@Z-$X-1]};

      /MC/  &&do{($S,$L,$X,$D)=split//,$X;$S--;@Z=@Z[0..$S-1,($D eq "L"?($S+$X..$S+$L-1,$S..$S+$X-1):($S+$L-$X..$S+$L-1,$S..$S+$L-$X-1)),$S+$L..@Z-1]};

      /REV/ &&do{($S,$L)=split//,$X;$S--;@Z=(@Z[0..$S-1],reverse(@Z[$S..$S+$L-1]),@Z[$S+$L..@Z-1])};

      /SWAP/&&do{($S,$L,$P)=split//,$X;$S--;$P--;@Z=@Z[0..$S-1,$P..$P+$L-1,$S+$L..$P-1,$S..$S+$L-1,$P+$L..@Z-1]};

      /SORT/&&do{($S,$L,$M)=split//,$X;$S--;@Z=(@Z[0..$S-1],(sort{($M eq "A"?$a cmp $b:$b cmp $a)}@Z[$S..$S+$L-1]),@Z[$S+$L..@Z-1])};

    }

  }

  print join'',@Z;print"\n";

}