웹 브라우저에는 최근에 방문한 페이지 사이를 뒤로/앞으로 이동하는 기능이 있다. 이 기능은 두 개의 스택으로 구현할 수 있다. 하나는 뒤로 가기로 도달할 수 있는 페이지를, 다른 하나는 앞으로 가기로 도달할 수 있는 페이지를 저장한다. 이 문제에서는 이 동작을 직접 구현한다.
다음 명령을 지원해야 한다.
BACK: 현재 페이지를 앞으로 가기 스택의 맨 위에 넣는다. 그리고 뒤로 가기 스택의 맨 위에서 페이지를 꺼내 새로운 현재 페이지로 삼는다. 뒤로 가기 스택이 비어 있으면 이 명령은 무시된다.FORWARD: 현재 페이지를 뒤로 가기 스택의 맨 위에 넣는다. 그리고 앞으로 가기 스택의 맨 위에서 페이지를 꺼내 새로운 현재 페이지로 삼는다. 앞으로 가기 스택이 비어 있으면 이 명령은 무시된다.VISIT <url>: 현재 페이지를 뒤로 가기 스택의 맨 위에 넣고, 지정된 URL을 새로운 현재 페이지로 삼는다. 앞으로 가기 스택은 모두 비운다.QUIT: 브라우저를 종료한다.브라우저는 처음에 URL http://www.acm.org/ 의 페이지를 불러온 상태로 시작한다고 가정한다.
입력의 첫 줄에는 이어지는 테스트 케이스의 개수를 나타내는 양의 정수가 하나 주어진다. 이 줄 다음에는 빈 줄이 하나 오고, 연속한 두 테스트 케이스 사이에도 빈 줄이 하나씩 있다.
각 테스트 케이스는 명령들의 나열이다. 명령 키워드 BACK, FORWARD, VISIT, QUIT 는 모두 대문자이다. URL에는 공백이 없으며 길이는 최대 70자이다. 어떤 순간에도 각 스택에 100개를 넘는 원소가 필요한 경우는 없다고 가정해도 된다. 각 테스트 케이스의 명령은 QUIT 명령으로 끝난다.
각 테스트 케이스에 대해 아래 설명대로 출력한다. 연속한 두 테스트 케이스의 출력은 빈 줄 하나로 구분한다.
QUIT 을 제외한 각 명령에 대해, 그 명령이 무시되지 않았다면 명령 실행 후 현재 페이지의 URL을 출력한다. 명령이 무시되었다면 Ignored 를 출력한다. 각 명령의 출력은 한 줄에 하나씩 출력한다. QUIT 명령에 대해서는 아무것도 출력하지 않는다.