주사위 장인의 하루는 이른 아침에 시작된다.
당신은 주사위 장인이다. 손님에게 주문을 받아 날마다 여러 가지 주사위를 만든다. 오늘 받은 주문은 여섯 개의 수 t1,t2,…,t6이 여섯 면에 하나씩 적힌 정육면체 주사위다. 어느 수를 어느 면에 적을지는 상관없다.
주사위는 평평한 판 모양의 도구 위에서 만든다. 처음에는 모든 면에 0이 적힌 주사위를 판 위에 올려놓는다. 판 위에서 주사위를 북쪽, 남쪽, 동쪽, 서쪽 중 한 방향으로 90도 굴리면 판에 새로 닿는 면의 수가 1 늘어난다. 방향을 알맞게 골라 여러 번 굴리면 주문받은 주사위를 만들 수 있다.
각 면에 최종적으로 적히는 수는 주사위를 굴린 방향의 순서로 정해진다. 이 방향의 순서를 나타내는 문자열을 조작 순서열이라고 부른다. 조작 순서열의 정의는 다음과 같다. 굴린 횟수를 n이라고 하면 조작 순서열은 n개의 문자로 이루어진다. i번째로 동쪽으로 굴렸다면 조작 순서열의 i번째 문자는 E다. 같은 방식으로 서쪽이면 W, 남쪽이면 S, 북쪽이면 N이다. 예를 들어 조작 순서열 NWS는 북쪽, 서쪽, 남쪽 순서로 세 번 굴렸다는 뜻이다.
손님이 주문한 여섯 개의 정수가 주어지면 주문대로 주사위를 만드는 조작 순서열을 구하라. 가능한 조작 순서열이 둘 이상이면 사전순으로 가장 앞서는 것을 구한다.
입력은 여러 개의 데이터 집합으로 이루어진다. 데이터 집합의 개수는 40개를 넘지 않는다. 각 데이터 집합의 형식은 다음과 같다.
t1 t2 t3 t4 t5 t6
p q
t1,t2,…,t6은 손님의 주문을 나타내는 정수다. p와 q는 조작 순서열에서 출력할 구간을 정하는 양의 정수이며, 자세한 내용은 출력에서 설명한다.
각 데이터 집합은 0≤t1≤t2≤⋯≤t6≤5000과 1≤p≤q≤t1+t2+⋯+t6을 만족한다. 여섯 개의 0으로 이루어진 줄이 입력의 끝을 나타낸다.
데이터 집합마다 사전순으로 가장 앞서는 조작 순서열의 p번째 문자부터 q번째 문자까지를 한 줄에 출력한다. 주문대로 주사위를 만들 수 없으면 impossible을 출력한다.
사전순은 다음과 같이 정의한다. 빈 문자열이 가장 앞선다. 비어 있지 않은 두 문자열 x=x1⋯xk와 y=y1⋯yl에 대해, 다음 중 하나가 성립하면 x가 y보다 앞선다.