파티 램프

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

$1$번부터 $N$번까지 번호가 붙은 색색의 램프 $N$개가 있습니다. 램프들은 네 개의 버튼에 연결되어 있습니다.

  • 버튼 1 — 모든 램프의 상태를 반전합니다. 켜져 있던 램프는 꺼지고, 꺼져 있던 램프는 켜집니다.
  • 버튼 2 — 홀수 번호 램프의 상태를 모두 반전합니다.
  • 버튼 3 — 짝수 번호 램프의 상태를 모두 반전합니다.
  • 버튼 4 — 번호가 $3K+1$ ($K \ge 0$) 꼴인 램프, 즉 $1, 4, 7, \dots$번 램프의 상태를 반전합니다.

버튼을 누른 총횟수는 계수기 $C$에 기록됩니다.

행사가 시작될 때 모든 램프는 켜져 있고 계수기 $C$는 $0$입니다.

계수기 $C$의 값과 일부 램프의 최종 상태 정보가 주어집니다. 주어진 정보와 모순되지 않는 $N$개 램프의 가능한 모든 최종 배열을, 서로 다른 배열마다 정확히 한 번씩 구하세요.

입력

입력은 램프 개수 $N$, 버튼을 누른 횟수 $C$, 그리고 일부 램프의 알려진 최종 상태를 나타내는 네 줄로 이루어집니다.

  • 첫째 줄에는 정수 $N$이 주어집니다.
  • 둘째 줄에는 계수기 $C$의 최종 값이 주어집니다.
  • 셋째 줄에는 최종 배열에서 켜져 있다고 알려진 램프 번호들이 공백으로 구분되어 주어지고, 정수 $-1$로 끝납니다.
  • 넷째 줄에는 최종 배열에서 꺼져 있다고 알려진 램프 번호들이 공백으로 구분되어 주어지고, 정수 $-1$로 끝납니다.

제약 조건:

  • $10 \le N \le 100$
  • $1 \le C \le 10000$
  • 켜져 있다고 알려진 램프는 최대 $2$개입니다.
  • 꺼져 있다고 알려진 램프는 최대 $2$개입니다.
  • 유효한 최종 배열이 항상 하나 이상 존재합니다.

출력

입력과 모순되지 않는 $N$개 램프의 가능한 모든 최종 배열을 중복 없이 출력합니다.

각 배열은 한 줄에 $N$개의 문자로 이루어진 문자열로 출력하며, $i$번째 문자는 $i$번 램프의 상태를 나타냅니다. 0은 꺼짐, 1은 켜짐을 뜻합니다.

배열은 사전순 오름차순으로 출력하세요 (예를 들어 00000000000101010101보다 먼저 옵니다).