창영이는 춤을 배우고 있다. 창영이가 추는 춤은 공백으로 구분된 여러 개의 스텝(step)을 한 줄로 나열한 것이며, 다음 다섯 가지 규칙을 지켜야 한다.
dip은 다음 세 경우 중 하나에서만 출 수 있다.
jiggle을 춘 바로 다음에 (예: ... jiggle dip ...)jiggle을 춘 다다음에 (예: ... jiggle stomp dip ...)twirl을 추기 바로 직전에 (예: ... dip twirl ...)clap stomp clap으로 끝나야 한다.twirl을 한 번이라도 췄다면, hop도 한 번 이상 춰야 한다.jiggle로 시작할 수 없다.dip을 반드시 한 번 이상 춰야 한다.창영이가 춘 춤이 주어졌을 때, 위 규칙을 모두 지켰는지 판별하는 프로그램을 작성하시오.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 한 줄이며, 창영이가 춘 춤 하나가 주어진다. 한 춤은 최대 1000개의 스텝으로 이루어지고, 각 스텝은 소문자 알파벳으로만 이루어지며 최대 100글자이다. 입력은 파일의 끝(EOF)까지 계속된다.
각 테스트 케이스마다 한 줄씩 출력한다.
form ok: 를 출력한 뒤, 입력으로 주어진 춤을 그대로 출력한다.form error K: 를 출력한 뒤 춤을 출력한다. 여기서 K는 어긴 규칙의 번호이다.form errors K(1), K(2), ..., K(N-1) and K(N): 를 출력한 뒤 춤을 출력한다. 어긴 규칙 번호 K(i)는 오름차순으로 나열한다.춤을 출력할 때, 1번 규칙을 어긴(잘못된 위치에서 춘) dip은 모두 대문자 DIP로 출력한다.